Maven 未在 Jenkins 中识别

Maven not recognized in Jenkins

我在 Windows 8 上安装了 Tomcat 7,上面部署了 Jenkins。我在 Jenkin 设置中配置了 JDK、Ant 和 Maven。在 Maven 部分,我将名称命名为 LocalMaven,将 MAVEN_HOME 命名为 C:\Techie\apache-maven。当我进行测试构建时,它给了我以下错误,即 mvn.bat 无法识别。然后我通过在CMD中输入mvn命令来检查。它给出了一些 maven 语句,这意味着 maven 在 PATH 变量中可用。

谷歌搜索后,我在 Jenkin-Maven 配置中将 MAVEN_HOME 更改为 **%M2_HOME%\bin**。仍然没有用。

日志:

已编辑:添加了分析

Jenkins 执行的命令是 [workspace] $ cmd.exe /C '"mvn.bat -f String-replacer compile && exit %%ERRORLEVEL%%"',其中 mvn.bat 不是有效命令,因此 Jenkins 错误如下 'mvn.bat' is not recognized as an internal or external command, 我认为 Jenkins 应该将命令调用为 mvn 和不是 mvn.bat。如果我错了,有专家可以纠正我吗?如果我是对的,请告诉我如何改变这种行为。

已编辑:附加配置

我想您的 Tomcat 服务器是 运行 作为 Windows 服务。

您是否将 MAVEN_HOME 和 M2_HOME 创建为系统环境变量? (与您的路径相同)

另一个解决方案是在 apache-tomcat/bin/setenv.bat 文件中配置您的变量:

set MAVEN_HOME=C:\Techie\apache-maven
set PATH=%MAVEN_HOME%\bin;%PATH%

我打赌你已经安装了 Maven 3.3 mvn.bat 重命名为 mvn.cmd

Jenkins JIRA 中有关于此问题的报告:https://issues.jenkins-ci.org/browse/JENKINS-27525