我正试图让Hudson编译我的一个Java项目,但它一直失败。
我开始了一项新工作,“建立一个自由风格的软件项目”。
我已经将SCM设置为Mercurial,添加了一个构建步骤"mvn编译“,并让它发布Junit和JDepend结果。JUnit测试报告简单命名为"*.xml“
克隆的回购成功,但回购拒绝编译。我收到以下错误消息:
[workspace] $ /usr/local/bin/hg log --rev . --template {node}
[workspace] $ /bin/bash -xe /tmp/hudson1162267116265588070.sh
+ mvn compile
/tmp/hudson1162267116265588070.sh: line 2: mvn: command not found
Recording test results
[JDepend] JDepend plugin is ready
[JDepend] Starting JDepend file, outputting to /tmp/jdepend6348540211061861772.xml
[JDepend] Found 2 classes in 1 packages
Finished: FAILURE编辑:mvn -ver结果
Java version: 1.6.0_21
Java home: /usr/java/jdk1.6.0_21/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux" version: "2.6.32-25-generic" arch: "i386" Family: "unix"另外,我在/etc/bash.bashrc文件中添加了什么。
export JAVA_HOME=/usr/java/jdk1.6.0_21
export M2_HOME=/usr/local/apache-maven/apache-maven-2.2.1
export M2=$M2_HOME/bin
export MAVEN_OPTS="-Xms256m -Xmx512m"
export PATH=$M2:$PATH
export MAVEN_HOME=/usr/local/apache-maven/apache-maven-2.2.1
export MAVEN=$MAVEN_HOME/bin还有$PATH的回声。
/usr/local/apache-maven/apache-maven-2.2.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/java/jdk1.6.0_21/bin
发布于 2010-11-05 15:19:26
约翰五世的回答和评论的基本部分。
它找不到maven,因为它不在路上。如果你在哈德逊的.profile设置路径,那你就倒霉了。配置文件将只对登录shell执行。AFAIK,Hudson打开一个非交互式shell来执行构建步骤,因此不会执行.profile。
当您使用Hudson用户帐户登录并运行maven命令时,您将不会遇到任何问题,因为配置文件是正确执行的。
https://stackoverflow.com/questions/4097455
复制相似问题