javajdk安裝教程 JAVA寫好的編譯好的程序能在沒有jdk的系統(tǒng)中運(yùn)行嗎?
JAVA寫好的編譯好的程序能在沒有jdk的系統(tǒng)中運(yùn)行嗎?先說結(jié)論:Jdk可以不要,jre還是需要的!Java運(yùn)行必須依靠虛擬機(jī)(JVM),如果要系統(tǒng)能直接運(yùn)行,需要編譯成native code,而ja
JAVA寫好的編譯好的程序能在沒有jdk的系統(tǒng)中運(yùn)行嗎?
先說結(jié)論:Jdk可以不要,jre還是需要的!
Java運(yùn)行必須依靠虛擬機(jī)(JVM),如果要系統(tǒng)能直接運(yùn)行,需要編譯成native code,而java的編譯結(jié)果還是一個(gè)中間產(chǎn)物,稱為字節(jié)碼,如果需要執(zhí)行還需要經(jīng)過JVM的JIT才能將字節(jié)碼轉(zhuǎn)化為native code才能被系統(tǒng)執(zhí)行!
所以JVM是必須的,jdk是開發(fā)工具,jre是Java提供的API庫,寫個(gè)程序肯定會(huì)用到j(luò)re中的東西,所以jre成了必須!但是Jdk不必須!
在Java界鄙人還未發(fā)現(xiàn)有類似C# Mono的AOT編譯工具(直接編譯出指定系統(tǒng)平臺(tái)的native code,與JIT是不同的) 所以直接執(zhí)行還是有點(diǎn)問題的~