我在Jenkins中运行我的Maven / Spring项目(只是第一次测试它),使用shell脚本选项:
mvn spring-boot:run
我收到了构建错误:
/Users/Shared/Jenkins/tmp/jenkins8087926087546049217.sh: line 2: mvn: command not found
我该如何解决这个问题?它是一个Spring-boot应用程序。当我通过命令行运行mvn spring-boot:run
时,它工作正常。
答案 0 :(得分:3)
我在Windows上遇到了类似的问题。 Maven在控制台上运行良好,但在被Jenkins称为cmd命令时失败了。
原因是Jenkins是作为系统用户的服务安装和运行的。这意味着该过程无法查看用户的ENV变量和PATH(用户级别)。在系统级别的PATH和ENV变量中设置maven就可以了。
P.S。:@Charo maven配置从配置系统转移到更新的Jenkins版本中的Global Tool Configuratin
答案 1 :(得分:1)
答案 2 :(得分:1)
确保maven配置为true。 您可以使用 cmd 并运行:
mvn -version
如果没有错误,请尝试
mvn spring-boot:run
答案 3 :(得分:0)
我遇到了类似的问题,我把名字命名为maven-3.3.9
并放置MAVEN_HOME LIKE:E:\ Softwares \ apache-maven-3.3.9 \ bin
答案 4 :(得分:0)
如果仍然无法正常运行,请将以下内容添加到“执行外壳程序”
export MAVEN_HOME=/opt/maven
export PATH=$PATH:$MAVEN_HOME/bin
mvn --version
mvn clean package
答案 5 :(得分:0)
export MAVEN_HOME=/opt/maven
export PATH=$PATH:$MAVEN_HOME/bin
mvn --version
mvn clean package
然后mvn install
答案 6 :(得分:0)
我在ubuntu 16.04机器上遇到了这个问题,实际原因是未设置$ mpath目录中的maven bin目录路径。
如何检查?
您可以在Jenkins GUI的execute shell提示中添加以下行。
echo $M2_HOME
echo $PATH
mvn clean install
再次构建时,您会看到M2_HOME或$ PATH变量中未设置Maven Bin路径。
或者您可以从根用户登录Jenkins用户并运行以下命令。
su - Jenkins
echo $PATH
解决方案::
1. logged in to root user.
2. then this command cd /etc/profile.d/
3. vim maven.sh then add below lines
export M2_HOME=/usr/local/maven
export PATH=$PATH:$M2_HOME/bin
4. run this command chmod +x maven.sh
5. then login to jenkins user (su - jenkins) then see again maven path is set or not via (echo $PATH) command.
6. If the path is set then restart Jenkins service
service jenkins restart
and re-login in Jenkin GUI (http://localhost:8080/)
7. Now rebuild your job then you will get success :-)
答案 7 :(得分:0)
我也遇到了问题并解决了。我认为通过“新建项目”按钮创建新项目时,您可能使用的是“ FreeStyle项目”而不是“ Maven项目”。
在FreeStyle项目中,Jenkins可能无法在Linux服务器和“全局工具配置”中的Maven安装中读取环境变量,因此我在“配置系统”中重复配置了环境变量。然后它起作用了。