写在前面的高亮总结:
- git clone的延时改为60
- 在从节点运行项目,因此从节点也需要在Jenkins上配置环境变量
- 示例程序源码地址
第一次报错
超时报错 没有测试文件先来解决第一个,我改了凭据认证方式
改为私钥认证改完之后,报错变成了
超时报错报错信息似乎更详细了,这也让我得以参考这篇文章
Solution steps:
- For resolve the problem we have to edit in Jenkins project configuration and find the "git".
- Then click on "Add" button and select "Advanced clone behaviours".
- Then in Timeout (in minutes) for clone and fetch operations box put any number which is more then 10, (I put 60 here).
- Apply and the save the configuration.
-
Build Now again , It took some more time to build , but it will fixed this error.
git_clone延时.png
这一次的构建报错是:
提示没有文件或目录对于这个报错,这个问答给出的回答是给jenkins用户执行mvn权限。但我已经给了最高权限,看了讨论后我把maven version改成了自己配置里定义的版本。然后……开始了不一样的报错ORZ
[game-of-life-default] $ /usr/src/maven/apache-maven-3.6.1/bin/mvn clean package
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
环境变量似乎有问题
参考这篇文章改后似乎没有效果,多次尝试后我决定先在本地尝试打包maven项目,排除问题,参考 Linux下Maven的安装与使用,发现本地是可以编译打包的,之前排除了tomcat的问题(针对一台机器同时用多个jdk版本时候的场景,需要在tomcat的配置文件里指定jdk版本,而我只用了一个jdk,所以不需要)。
maven和tomcat都不是问题所在,最终还是回到了环境变量的问题,由于我的主节点及从节点本地环境变量配置都没有问题,所以很可能是Jenkins没有找到jdk,我重新创建了一个只在主节点进行构建的项目,发现可以成功build!再次请教后,知道了从节点也需要配置环境变量:
配置完之后重新构建,果然成功了!测试报告也正常生成!
网友评论