Mac上使用jenkins+ant执行第一个程序
本文旨在让同学们明白如何让jenkis在mac笔记本上运行,以模拟实际工作中在linux上搭建jenkins服务平台
首先按照笔者的习惯先说一下如何安装jenkis和tomcat,先安装tomcat,在电脑上输入url:https://tomcat.apache.org/download-90.cgi下载你需要的,本人下载后从原先地点放到了桌面上,路径是安装到了桌面,具体位置是/Users/zlr/Desktop/apache-tomcat-9.0.6,然后使用命令启动./Users/zlr/Desktop/apache-tomcat-9.0.6/bin/startup.sh可以启动tomcat,打开127.0.0.1:8080如果可以看到页面就可以启动,网上说这样就可以启动哈,但是在一般情况下都启动不了,这时去看日志路径tail -300f /Users/zlr/Desktop/apache-tomcat-9.0.6/log/catalina.out,发现报错如图

这种错误可以猜测是tomcat和java版本不相符导致的,笔者机器是jdk1.6,tomcat安装的是9,肯定是不行的,可以换一个网站下载https://tomcat.apache.org/download-70.cgi这里可以下载7.0版本,然后安装后继续看那个日志,发现没有报错,打开浏览器输入127.0.0.1:8080后可以正常打开,下图为安装tomcat成功
安装tomcat后可以去尝试安装jenkis了,这里推荐在http://updates.jenkins-ci.org/download/war/这个路径下下载合适的war包,笔者下载来jenkis2.55的包,按照文章https://www.cnblogs.com/zhanggui/p/6227832.html中所说放到指定位置,但是发现还是无论如何没有启动,还是要追查日志,发现日志中有这样一行

估计又是笔者这个机器的java版本和tomcat版本和这个jenkis版本不符合导致的了,总的来说,肯定是最新的java版本和tomcat版本最能兼容,所以笔者立刻换了版本,经过笔者多次碰壁发现,有的时候网上最官方的会把java文件安装在/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java这个路径下,但是我们的代码比较识别java开头的,所以还是推荐一篇文章https://www.cnblogs.com/cphmvp/p/6604316.html,这一篇文章中的1.6,1.7,1.8版本java会安装在/Library/Java/JavaVirtualMachines路径下
安装好之后开始尝试修改本地的.bash_profile文件然后成功的修改并执行source,刷新环境变量后依然不行,笔者果断重启机器后ok了
输入vi /Users/Shared/Jenkins/Home/secrets/initialAdminPassword拿出来密码放进去,开始安装,经过安装很快就到了下图这一步~这里开始建立jenkins任务,之前笔者介绍了不少ant执行任务的情况,本文来具体演示一下,执行一个ant脚本

在之前的基础上,我们已经有了一个完整的ant+buildxml+juint脚本,所谓的jenkis的特点就是要使用jenkins触发ant命令,首先建立一个任务,啥都不设置然后进行如图配置

完成后就进入了ant执行,点击立即构建,发现又是有问题,进入后发现如图错误

总的来说肯定是一波3折的哈~~哎,不得不承认确实很困难,主要就是权限等等意想不到的问题,,,主要解决办法就是看日志~加油吧各位
具体笔者为了写这一篇博客遇到过的问题踩过的坑:
1无法删除或打开文件:使用chmod 777命令加权限
2无法创建文件报错Could not create tempfile in xxxxx,我只是想说,我真的无语,必须还是创建文件的问题,在上一级目录使用chmod 777即可
真不容易,最后上传一张笔者最后的图片吧,希望各位好自为之~

Mac上使用jenkins+ant执行第一个程序的更多相关文章
- mac上使用crontab周期性执行python脚本
这个月买了本书<Linux系统命令及Shell脚本实践指南>, 看到了一个周期性执行任务cron.顿时产生一个想法: mac上有这种机制么? 加上自己也在15年下半年也学了点python脚 ...
- 在Mac上也能轻松拥有Windows应用程序的简便方法
一般而言,如果我们想要在Windows的环境下下载一款软件那是件很方便的事情.只要我们登陆软件的官网进行下载即可.但是如果我们使用的是Mac OS系统,很多用户就会发现,许多软件会出现不兼容的情况. ...
- MAC上搭建Jenkins + Android + IOS自动开发部署环境
因为MAC是大小写不敏感的操作系统,很多Linux命令不支持,所以首先要创建大小写敏感的操作系统. 设置静态IP 打开"System Preferences..." 点击" ...
- Mac上使用jenkins+git持续集成浅析
本文旨在让同学们明白如何让jenkis在mac笔记本上运行,并实际与一个最简单的git地址交互并执行简单的jenkins任务,如果学习本文,需要先按照https://www.cnblogs.com/x ...
- Linux上安装GO开发环境+第一个程序编译运行
首先官网下载包: 使用wget命令下载到自己的目录里 wget https://dl.google.com/go/go1.13.4.linux-amd64.tar.gz 解压: tar -xvf go ...
- Mac上部署JDK/Ant/Jmeter/Jenkins
一.安装JDK 1. 下载JDK 2. 下完后直接双击安装,默认安装到/Library/Java/JavaVirtualMachine下 3. 验证是否安装成功 java -version 二.安装J ...
- 在mac上 使用jenkins 执行python文件
1.要选择 [执行 shell]构建
- iOS自动化探索(八)Mac上的Jenkins安装
安装Jenkins 首先检查是否有Jenkins依赖的java环境 java -version 出现java version "1.8.xx"说明已经安装了java Jackeys ...
- Mac上安装Jenkins持续部署初体验
1.首先去官网下载安装包 https://jenkins.io/doc/book/installing/ 安装完成后,很不幸,无法访问他的默认站点 查了一堆资料,有的说环境变量没有配置,有的说没有执行 ...
随机推荐
- 如何使用 VS生成动态库?
如何使用 VS生成动态库? //.cpp 文件默认定义了 __cplusplus 宏 #ifdef __cplusplus extern "C"{ #endif xxx #ifde ...
- hihoCoder 403 Forbidden 字典树
题意:给定个规则,个ip,问这些ip是否能和某个规则匹配,如果有多个规则,则匹配第一个.如果没能匹配成功,则认为是"allow",否则根据规则决定是"allow" ...
- 计蒜客 无脑博士 bfs
题目链接无脑博士的试管们 思路:直接模拟倒水过程即可,但是需要记忆判断当前的情况是否已经处理过.dfs和bfs都ok AC代码 #include <cstdio> #include < ...
- 转: JavaScript 获取对象属性和方法
一.获取对象属性和方法 Object.keys()for in 返回对象的可枚举属性和方法的名称数组. Object.getOwnPropertyNames() 返回的数组的所有属性(可枚举或不可枚举 ...
- 阻止微信浏览器/QQ浏览器长按弹框“在浏览器打开”
这个弹框实际上等同于PC环境下的鼠标右键的弹框,因此只要禁止页面的弹框事件就能完美屏蔽该弹框对我们功能带来的影响.程序代码如下: document.oncontextmenu=function(e){ ...
- 决策树学习笔记(Decision Tree)
什么是决策树? 决策树是一种基本的分类与回归方法.其主要有点事模型具有可得性,分类速度快.学习时,利用训练数据,根据损失函数最小化原则建立决策树模型:预测时,对新数据,利用决策树模型进行分类. 决策树 ...
- 使用static与const关键字时需要掌握的知识
static:1.不考虑类,static的作用: 1)第一个作用:隐藏.使得全局变量和函数对其它文件不可见,同时避免了不同文件的命名冲突. 2)第二个作用:默认初始化为0.未初始化的全局静 ...
- Bootloader Project
Bootloader Project From OMAPpedia Jump to: navigation, search Contents [hide] 1 OMAP Bootloader Over ...
- Java中list.get(index)报错
1.list.get(index)中的index为负值异常 严重:Exception occurred during processing request:-1 java.lang.ArrayInde ...
- VTK显示mhd,mha格式文件
下一篇文章将详细介绍mhd,mha文件的构成以及如何制作void renderMhd () { // read input image vtkSmartPointer<vtkMetaImageR ...