問題:無法建立使用與詹金斯JDK 1.8Maven的詹金斯無法找到在JDK中的javac編譯
說明春天Maven項目:進出口使用詹金斯建立由Maven.I有管理我的春天項目使用JDK安裝選項在Jenkins中配置Java 1.7和1.8。當在構建配置中選擇Java 1.7並運行構建時,構建過程就會成功。但是當我在構建配置中選擇Java 1.8並運行構建時,構建過程失敗。
****下面是詹金斯控制檯輸出****
Started by user anonymous
Building in workspace C:\Users\anonymous\.jenkins\jobs\springsecuritysampleproject1\workspace
Updating file:///C:/DevEnv/Repositories/LocalSVNServerRepo/root/springsecuritysample/trunk at revision '2016-01-13T13:35:52.488 +0530'
U src\main\java\org\springframework\security\sample\HomeController.java
At revision 21
Parsing POMs
[workspace] $ C:\DevEnv\ProgramFiles\Java\jdk1.8.0_20/bin/java -cp C:\Users\anonymous\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven31-agent-1.5.jar;C:\DevEnv\ProgramFiles\ProjectTools\Apache_Maven_3.3.3\boot\plexus-classworlds-2.5.2.jar;C:\DevEnv\ProgramFiles\ProjectTools\Apache_Maven_3.3.3/conf/logging jenkins.maven3.agent.Maven31Main C:\DevEnv\ProgramFiles\ProjectTools\Apache_Maven_3.3.3 C:\Users\anonymous\.jenkins\war\WEB-INF\lib\remoting-2.53.2.jar C:\Users\anonymous\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven31-interceptor-1.5.jar C:\Users\anonymous\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven3-interceptor-commons-1.5.jar 52876
<===[JENKINS REMOTING CAPACITY]===>channel started
Executing Maven: -B -f C:\Users\anonymous\.jenkins\jobs\springsecuritysampleproject1\workspace\pom.xml install
Waiting for Jenkins to finish collecting data
[JENKINS] Archiving C:\Users\anonymous\.jenkins\jobs\springsecuritysampleproject1\workspace\pom.xml to org.springframework.security/sample/1.0.0-BUILD-SNAPSHOT/sample-1.0.0-BUILD-SNAPSHOT.pom
Sending e-mails to: [email protected]
channel stopped
Archiving artifacts
Sending e-mails to: [email protected]
Finished: FAILURE
*
我也跑了Maven的與Java 1.7和沒有任何問題observerd手動。但是 當我跑一樣與Java 1.8和重定向輸出到文件, 發現下面的錯誤
*
INFO] Compiling 1 source file to C:\DevEnv\STSWorkspaces\springsecuritysample\target\classes
[INFO] -------------------------------------------------------------
**[ERROR] COMPILATION ERROR :**
[INFO] -------------------------------------------------------------
[ERROR] Unable to locate the Javac Compiler in:
C:\DevEnv\ProgramFiles\Java\jdk1.8.0_20\..\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.
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.640 s
[INFO] Finished at: 2016-01-13T13:40:34+05:30
[INFO] Final Memory: 8M/487M
[INFO] ------------------------------------------------------------------------
JAVA_HOME變量被正確地指向JDK 1.8安裝主目錄和bin文件夾也被添加到該路徑
回波%JAVA_HOME%結果在C:\ devenv的\ PROGRAMFILES \爪哇\ jdk1.8.0_20
瓦時恩改變了JAVA_HOME變量指向的Java 1.7,建立正常運行,沒有錯誤
的完整路徑只是爲了消除任何疑問,也確實是下'C安裝了JDK:\ devenv的\ PROGRAMFILES \的Java \ jdk1.8.0_20'並指出當' JAVA_HOME',運行'javac -version'會產生正確的結果,對嗎? – Morfic
是的。運行命令C:\ Users \ anonymous> javac -version 結果輸出 - > javac 1.8.0_20 – kavsik
經過幾個小時的調試後,maven獲取了tools.jar來啓動Sun的Main類,獲得了成功(使用JDK 1.7)和失敗(使用JDK 1)的自定義日誌輸出。8)構建運行如下 – kavsik