2013-01-18 45 views
19

當我嘗試運行以下命令我得到一個錯誤:無法找到tools.jar。希望能夠找到它在C: Program Files文件的Java JRE6 李斌 tools.jar中

$ ant -Dsdk.dir=/opt/google/appengine-java-sdk runserver -Dserver.host=192.168.1.10 

以下是錯誤:

"Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre6\li b\tools.jar".

我已經給出了JAVA_HOME中的jdk路徑變量C:\PROGRA~1\Java\jdk1.6.0_25,因爲我的jdk位置是C:\Program Files (x86)\Java\jdk1.6.0_25

問題是什麼?請幫助我。提前感謝。

當我試圖運行命令螞蟻-diagnostics,我

java.home : C:\Program Files\Java\jre6 
+0

您是否知道該路徑中「li」和「b」之間的空格字符?我非常懷疑它應該在那裏;) – posdef

+0

這可能只是一個錯字 – AurA

+1

JRE沒有tools.jar。從路徑判斷,似乎'ant'仍然加載JRE而不是JDK。 –

回答

2

你可能會建立一些項目具有在項目根級稱爲local.properties舊文件。那裏有一個sdk.dir屬性,它指向錯誤。用編輯器打開該文件並且正確。

此外,您的命令行看起來有問題。在那裏你使用一些Unix路徑來指定sdk的位置,並且從其餘的消息看你在Windows上。確保財產符合您的sdk位置。它可能根本不需要。

+0

該命令將使用標準的App Engine for Java for Cloud雲消息傳遞設置服務器,並且我正在使用Windows。 – user1767260

+0

你在哪裏在本地或在服務器上構建項目? – h22

+0

本地構建 – user1767260

23

您應該嘗試在PATH環境變量的開始處添加%JAVA_HOME%\ bin(給定語法假定Windows當然是)。 正如Peter Knego所說的,tools.jar存在於JDK中,而不是JRE中,因此您必須確保JAVA_HOME指向您的JDK目錄。

+1

%JAVA_HOME%\ bin出現在路徑末尾,所以改變位置,即添加在PATH環境變量的開始位置。有用!!但有什麼區別? – StackOverFlow

+2

那麼,當操作系統試圖找到一個可執行文件時,它將按照列出的順序嘗試PATH中列出的所有位置。所以如果你真的想要找到一些東西,就把它放在開頭,以防在其他一些地方發現一個同名的可執行文件。這可能是導致你的問題的原因:另一個java可執行文件可以在現有的PATH位置中找到,或者某種方式混淆了PATH語法,並且PATH的最後部分不可用。這是最可能的原因。 –

+1

%JAVA_HOME%\ lib在路徑開始處,如果你想加載tools.jar –

相關問題