2012-08-26 48 views
7

我已經下載了Java jdk1.7.0_06和Java jre7。我增加了以下系統變量JAVA_HOME C:\Program Files\Java\jdk1.7.0_06\bin到我的Windows 7,但是,當我輸入我的窗戶CMD命令行下面的7 C:\activiti-5.10\activiti-5.10\setup>ant demo.start運行演示應用程序我在命令行''「java.exe」'不被識別爲內部或外部命令,

以下錯誤「java.exe」'不被識別爲內部或外部命令,可操作程序或批處理文件

因此,有誰知道我可以如何解決這個問題? BR

+0

重複或導致錯誤。你在設置中做了更多的事情? http://stackoverflow.com/questions/12073535/unable-to-run-the-demo-setup – Jayan

回答

13

如果你看一下"ant.bat"文件,你會看到,它會在下列方式的 「java」 命令:

  1. 如果設置了%JAVACMD%環境變量,那麼它使用它。
  2. 否則,如果%JAVA_HOME%環境變量被設置,它嘗試使用%JAVA_HOME%\bin\java.exe
  3. 否則,它嘗試使用java.exe;即它會看你的%PATH%。

對於你的情況,你有%JAVA_HOME% set ...但設置爲Java安裝的「bin」目錄,而不是安裝的根目錄。因此Ant.bat腳本在java.exe的錯誤位置查找。

正確設置%JAVA_HOME%,它應該工作。

JAVA_HOME C:\Program Files\Java\jdk1.7.0_06 

你不需要有你的%PATH%了Java的「bin」目錄Ant來工作,但它是設置它無論如何是個好主意。這樣你就可以簡單地從命令行運行Java命令。

設置%CLASSPATH%與此問題無關。的確,除非build.xml文件被破壞,否則Ant將忽略你的%CLASSPATH%環境變量。

+0

好的謝謝你的回覆,我將JAVA_HOME改爲C:\ Program Files \ Java \ jdk1.7.0_06。現在,當我輸入「C:\ activiti-5.10 \ activiti-5.10 \ setup> ant demo.start」時,tomacat服務器將成功啓動。但是,當我導航到以下鏈接http:// localhost:8080/activiti-explorer ,,那麼我會得到以下錯誤「請求的資源(/ activiti-explorer)不可用」。任何想法如何解決這個問題? –

+0

這不是一個螞蟻問題。這是您嘗試使用的產品和/或您所遵循的說明的問題。問作爲一個新問題...並問超級用戶而不是SO。 –

+0

感謝您的回覆,我只是將C:\ Program Files \ Java \ jdk1.7.0_06 \ bin添加到我的PATH中,它工作正常。 –

2

你需要把文件的java.exe在PATH變量中,但在JRE JAVA_HOME

+0

感謝您的答覆,實際上java.exe都在bin文件夾中爲java jdk1.7.0_06和Java jre7 ... –

+0

它仍然可以工作 - 嘗試它,它工作4我:) – imulsion

+0

@imulsion - 如果你有'%JAVA_HOME%'set *在所有*,'%PATH%'不會被'螞蟻使用.bat'腳本。 –

2

通常JAVA_HOME應該是 「bin」 文件夾的父目錄。(JRE或JDK)

在這種情況下,ant預計java將來自JDK。

嘗試在cmd窗口下面

set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_06 
set path="%JAVA_HOME%/bin;%path%; 
ant 

(邊注:添加java.exe添加到路徑不是螞蟻的要求;它是用戶一個方便的事情)

+0

在33秒內擊敗我! – CKing

+0

感謝您的回覆,我試過上述命令,他們將成功啓動tomcat服務器,但是當我輸入>> ant demo.start時,我會得到相同的原始Java.exe錯誤?螞蟻我可以做的事情? –

1

JAVA_HOME是JDK根folder.eg的路徑:C:\ Program Files文件\的Java \ jdk1.7.0_06但路徑定義C:\ Program Files文件\的Java \ jdk1.7.0_06 \ BIN

JAVA_HOME C:\Program Files\Java\jdk1.7.0_06 
JRE_HOME C:\Program Files\Java\jre1.7.0_06 
path = C:\Program Files\Java\jdk1.7.0_06\bin;C:\Program Files\Java\jre1.7.0_06\bin 
+0

感謝您的回覆首先,我認爲您的意思是jre7而不是jre1.7.0_06。現在當我輸入「>> ant demo.start」時,它會給我說Build Successful。但是,java.exe cmd窗口將打開然後消失,所以服務器將無法啓動...任何想法是什麼導致這個,java.exe cmd窗口應該會自動打開並繼續運行... –

-1

我同意上述解釋但如果問題仍然存在,請嘗試settin G: CLASSPATH = C:\ Program Files文件\的Java \ jdk1.7.0_06 \ BIN

+0

感謝您的答覆,我添加了上面的環境變量,但現在當我輸入「>> ant demo.start」時,它會給我說Build Successful。但java.exe cmd窗口將打開然後消失,所以服務器不會啓動...任何想法是什麼導致這個,java.exe cmd窗口應該會自動打開,並繼續運行... –

+0

類路徑是不相關的問題。如果相關,錯誤信息會有所不同。 –

+1

類路徑絕對沒有任何**可以找到.exe。而且它不應該被使用。定義全局類路徑通常會產生比解決問題更多的問題。 –

1

只需從%windir/System32文件夾中刪除以下一組文件即可。實際上刪除java.exe就足夠了,但爲了一致起見,只需刪除所有與java相關的二進制文件。

  1. 的java.exe
  2. javaw.exe的
  3. javaws.exe

其實甲骨文的Windows安裝程序放置這些文件的副本到%WINDIR/System32文件夾(這我不明白爲什麼),但看起來不需要它們(因爲它們在安裝它們的JDK文件夾下無論如何都可用)。

我已經嘗試了所有在SO和其他論壇發佈的各種解決方案,但是他們都沒有爲我工作。我也正確設置了所有相關的環境變量(JAVA_PATH,CLASS_PATH等)。最後,這是唯一對我有用的解決方案。

相關問題