2012-03-29 191 views
17

我想運行一些Java EE示例。螞蟻是在暗示:Perhaps JAVA_HOME does not point to the JDK. It is currently set to "C:\Program Files\Java\jre7Ant構建不工作:無法找到一個javac編譯器

JAVA_HOME變量是:C:\Program Files\Java\jdk1.7.0_03,當我在我的Windows 7變量

然而,我的路徑(注意jdk1.6.0_26):

%M2_HOME%\bin;%ANT_HOME%\bin;%JAVA_HOME%\bin;%SystemRoot%\system32;%SystemRoot%; 
%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\; 
C:\Program Files\Microsoft Application Virtualization Client;%M2%; 
C:\Program Files\QuickTime\QTSystem\;C:\Program Files\TortoiseSVN\bin; 
%GLASSFISH%;%GLASSFISH_PARENT%; 

PATH=C:\Maven\apache-maven-2.2.1\bin;C:\Ant\apache-ant-1.8.2\bin;**C:\Program File 
s\Java\jdk1.6.0_26\bin;**C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C 
:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft Applicatio 
n Virtualization Client;C:\Maven\apache-maven-2.2.1\bin;C:\Program Files\QuickTi 
me\QTSystem\;C:\Program Files\TortoiseSVN\bin;C:\glassfish3\glassfish\bin;C:\gla 
ssfish3\bin;C:\Sun\jwsdp-2.0\jwsdp-shared\bin 

我是否必須做任何特別的事情才能讓Windows保存我的路徑?

更多信息:

C:\javaeetutorial5\examples\web\hello2>ant 
Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre7\li 
b\tools.jar 
Buildfile: C:\javaeetutorial5\examples\web\hello2\build.xml 

-pre-init: 

init: 

default-ear: 

-pre-compile: 

bpp-actual-compilation: 
    [echo] Compiling hello2 
    [echo] javaee.classpath.prefix is: C:\glassfish3/lib 
    [echo] is.glassfish.v3 is: ${is.glassfish.v3} 
    [javac] C:\javaeetutorial5\examples\bp-project\command-line-ant-tasks.xml:93 
: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=las 
t; set to false for repeatable builds 

BUILD FAILED 
C:\javaeetutorial5\examples\bp-project\command-line-ant-tasks.xml:93: Unable to 
find a javac compiler; 
com.sun.tools.javac.Main is not on the classpath. 
Perhaps JAVA_HOME does not point to the JDK. 
It is currently set to "C:\Program Files\Java\jre7" 

Total time: 0 seconds 

回答

37

爲Eclipse

  • 右擊build.xml文件--->構建路徑 - >配置構建路徑--->選擇庫選項卡
  • 點擊「添加庫」--->雙擊[jre系統庫] --->環境--->安裝jres --->添加--->標準vm
  • 點擊目錄--->瀏覽upto jdk [C:\ Program Files \ Java \ jdk1.7.0 _01]
  • 完成
  • 變化選擇JRE爲JDK --->單擊OK
+0

非常有幫助,謝謝 – DT7 2013-10-16 18:13:42

1

當你點擊在JRE類型窗口下一個按鈕選擇標準VM後,你去下一個名爲JRE的窗口定義您可以在其中找到目錄按鈕。 \ Program Files文件\的Java:

4

在Windows中,轉到計算機屬性,高級系統設置,高級,環境變量

添加一個名爲「JAVA_HOME」系統變量在我的情況「C的文件夾設置爲您的JDK位置\ jdk1.7.0_51「

關閉命令提示符,重新打開它,它現在應該工作。

16

快速工作,對同一是

複製C:\ Program Files文件\的Java \ jdk1.7.0_03 \ LIB \ tools.jar中爲C:\ Program Files文件\的Java \ jre7 \ LIB \

由於JAVA_HOME被設置爲C:\ Program Files \ Java \ jre7,並且Ant無法在其中找到tools.jar,所以此異常即將到來。

+1

你先生,剛剛救了我的j0b。 – 2015-08-04 02:12:34

+0

YOu保存我的時間 – 2017-01-29 21:01:35

+0

謝謝先生! – Leo 2017-10-06 15:09:49

2

當您的系統中安裝了JRE和JDK時,請確保JDK在您的PATH變量中首先出現。

我認爲系統會從左向右掃描PATH變量,不管先來先考慮。

在我的情況下(與LinuxMint)我得到了同樣的錯誤。 當我在JRE之前的PATH變量中添加JDK時,它解決了我的問題。

1

我在Mac OS X中遇到了同樣的錯誤,但是我能找到的所有答案都是針對Windows系統的,而且兩者的路徑有點不同,這些解決方案對我而言並不奏效。花了幾個小時後,我終於能夠通過以下方式修復它:

將/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/lib/tools.jar複製到/ Library /的Java/JavaVirtualMachines/jdk1.8.0_91.jdk /內容/首頁/ JRE/lib/ext目錄

它將爲Windows用戶工作過:

複製C:\ Program Files文件\的Java \ jdk1.8.0_91 \ lib \ tools.jar複製到C:\ Program Files \ Java \ jre8 \ lib \ ext

PS另外請注意,您在Eclipse中選擇的jdk和jre版本是兼容的。

0

在Windows 7 x64系統的Ant命令行中出現此錯誤。

以下變化固定問題

安裝JDK從Oracle servers,然後添加變量的新系統JAVA_HOME與價值C:\ Program Files文件\的Java \ jdk1.8.0_131

相關問題