回答
JDK包含了JRE。
大多數程序只需要JRE(Java Runtime Environment),但有些程序在運行時需要編譯器,在這種情況下您需要JDK。
如果您有JDK,則不需要JRE。
如果jre已經存在,爲什麼需要編譯器? – nobalG
@nobalG因爲我現在有足夠的信譽發表評論,這裏是爲你考慮這樣一個場景:我有我想要的地方寫在運行時編譯其他代碼代碼的情況,然後使用該編譯代碼。在我的情況我創建一個工具,可以採取基於特定框架的測試類,編譯,加載類,並且從中提取的測試數據,使得數據可以被用作端至端測試的一部分。爲了使此工具正常運行,必須使用JDK運行它,以便它可以使用Java編譯器。 –
要運行只需要java.exe的(窗口)的JAR文件。 JDK是用於Java的開發工具包,JRE是運行時。 JDK包含JRE。
謝謝。你能解釋一下我在linux上需要什麼? – Dhinakar
對於linux,您可以使用apt-get安裝java SDK,或者使用synaptic,或者您可以從oracle站點下載bin文件。 –
如果被執行的代碼依賴於僅包含在JDK,例如,'JavaCompiler'項目的第一個說法是不正確的。請參閱[這個答案](http://stackoverflow.com/a/2946402/3284624)爲例。 –
你只需要JRE。
如果你正在嘗試運行jar文件具有主類:<classname>
頭出現在清單文件,那麼你就可以簡單地運行該命令的jar文件:
java -jar [your jar file name]
如果清單文件不具有該條目(你知道包含的主要功能的類的完全限定類名),那麼你可以通過在命令運行jar文件:
java -cp [absolute path to jar file] [full qualified class name containing the main function]
如果被執行的代碼依賴於僅包含在JDK,例如,'JavaCompiler'項目這是不正確的。請參閱[這個答案](http://stackoverflow.com/a/2946402/3284624)爲例。 –
JRE是足夠運行
JDK用於開發
如果正在執行的代碼取決於僅包含在JDK中的項目,例如'JavaCompiler',則這不是真的。請參閱[這個答案](http://stackoverflow.com/a/2946402/3284624)爲例。 –
你需要一個JRE而不是JDK。 JRE是java運行時環境,沒有它就不能執行java代碼。 .jar是一個已編譯的java文件,並且這需要運行Java運行時環境。
此答案具有誤導性,因爲它暗示JDK不夠充分且不相關。我相信,一個更精確的答案是:「你需要一個或其他任一個就足夠了,因爲JDK包含JRE使用JDK,如果你打算做JAVA編程自己。」 –
如果被執行的代碼依賴於僅包含在JDK,例如,'JavaCompiler'項目這是不正確的。請參閱[這個答案](http://stackoverflow.com/a/2946402/3284624)爲例。 –
要運行只需要JRE jar文件。您可以運行以下命令jar文件:
Java的罐子[JAR文件名]
這並非總是如此。如果罐子包含取決於附帶的JDK而不是JRE(例如'JavaCompiler'),則可能無法正確或根本沒有JDK運行的項目代碼。請參閱[這個答案](http://stackoverflow.com/a/2946402/3284624)爲例。 –
你想運行jar文件;所以您只需要Java運行時環境(即JRE)。
如果正在執行的代碼取決於僅包含在JDK中的項目,例如'JavaCompiler',則這不是真的。請參閱[這個答案](http://stackoverflow.com/a/2946402/3284624)爲例。 –
在對已接受答案的評論中,nobalG問道:「如果jre已經存在,爲什麼需要編譯器?
在撰寫本文時,我沒有足夠的評論聲望,所以我在這裏回答。
我有一種情況,我想編寫代碼在運行時編譯其他代碼,然後使用該編譯代碼。在我的情況我創建一個工具,可以採取基於特定框架的測試類,編譯,加載類,並且從中提取的測試數據,使得數據可以被用作端至端測試的一部分。爲了使此工具正常運行,必須使用JDK運行它,以便它可以使用Java編譯器。
- 1. m2eclipse:Eclipse運行在JRE中,但需要JDK
- 2. 在沒有jdk或jre的機器上運行.jar文件
- 3. Leiningen是否需要JDK/JRE?
- 4. 我是否需要jdk和jre?
- 5. JRE所需的JAR文件
- 6. 在JRE中運行的Eclipse但需要JDK
- 7. 配置m2eclipse:「Eclipse運行在JRE中,但需要JDK」
- 8. ubuntu中的Maven JRE錯誤:Eclipse在JRE中運行,但需要jdk
- 9. JNDI需要JDK嗎?
- 10. 你需要運行建立與JDK或有工具的.jar
- 11. 運行servlets.Server JRE或客戶端JRE需要哪個JRE?
- 12. 是JDK還是JRE的junit jar部分?
- 13. 錯誤,同時運行需要.jar文件的java文件
- 14. 我的程序需要運行java JDK嗎?
- 15. 需要服務器VM,但在JRE中不可用。那麼我需要什麼軟件包:JRE,JDK?
- 16. 強制JRE從本地jar文件運行小程序
- 17. 使用特定的JRE運行JAR文件
- 18. Java JDK和JRE版本
- 19. 日食和JRE/JDK問題
- 20. 我可以在沒有JDK的情況下運行.jar文件嗎?
- 21. JRE版本足以運行jar
- 22. JDK作爲Zip文件只有不JRE
- 23. 一些jar文件通過雙擊運行,有些不需要
- 24. 需要幫助獲得librxtxSerial.jnilib進入可運行jar文件
- 25. 在eclipse上運行java jar需要bin目錄下的文件
- 26. 使用jar文件運行Java程序(Netbeans/Maven) - 需要幫助
- 27. 運行一個需要jar文件的java類
- 28. 如何知道java程序需要運行哪些jar文件?
- 29. 運行沒有安裝JDK的jar文件
- 30. 的JDK缺少和需要運行一些NetBeans模塊
ofcource要運行Jar文件,您只需要Java-RUNTIME-Environment(jre)而不是其中包含jre的Java-DEVELOPMENT-Kit(jdk)。但是我真的不知道'將這個jar文件運行到其他系統中'的意思,你是否簡單地意味着在不同的PC上運行? – nurgan