关于Jenkins中的Java Builds我遇到了问题.
我解决的错误如下:
Unable to locate the Javac Compiler in:
C:\Jenkins\jre\..\lib\tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.
我JDK1.6和JDK1.7项目,所以我需要两个JDK安装.对于我的默认Java JDK,我使用1.6作为JAVA_HOME变量,指向C:\Program Files\Java\jdk1.6.0_45.对于1.7版本也是如此,但是在一个单独的变量(JAVA_HOME7)中.该PATH变量包含\bin两个JDK版本的附加内容.
在Jenkins中,我还为JDK添加了两个版本,并添加了辅助变量.如果我为项目设置具体版本(例如JDK1.7),那么它的构建没有任何问题.不幸的是,我有很多构建项目,所以手动设置它会很费时间.
我不明白错误路径的调用或变量在C:\Jenkins\jre\..\lib\tools.jar哪里设置以及我可以在哪里修改它...
詹金斯版本:1.509.4
任何提示或建议如何解决这个问题?
当我尝试运行我的Jenkins Maven作业时,我收到以下错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project myProject: Fatal error compiling: invalid target release: 1.8 -> [Help 1]
Run Code Online (Sandbox Code Playgroud)
这表明Maven使用Java 1.8但它应该使用Java 1.7.
我在调试模式下运行Maven并显示正确的版本:
...
Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 14:51:28+0100)
Maven home: /var/lib/jenkins/tools/hudson.tasks.Maven_MavenInstallation/maven305
Java version: 1.7.0_71, vendor: Oracle Corporation
Java home: /var/lib/jenkins/tools/hudson.model.JDK/JDK_7u71/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.8.0-44-generic", arch: "amd64", family: "unix"
...
Run Code Online (Sandbox Code Playgroud)
Jenkins服务器使用Java 1.8运行
...
$ java -version
java version "1.8.0_74"
Java(TM) SE Runtime Environment (build 1.8.0_74-b02)
Java HotSpot(TM) 64-Bit Server …Run Code Online (Sandbox Code Playgroud)