如果我告訴NetBeans(6.9)在保存時進行編譯,NetBeans會警告我已編譯的類與用JDK的編譯器編譯的類不同。 Java平臺在同一個對話框中設置爲「JDK 1.6」。 NetBeans使用哪種編譯器?爲什麼NetBeans不使用JDK編譯器?NetBeans使用哪種Java編譯器?
alt text http://img814.imageshack.us/img814/3449/compileonsave.png
如果我告訴NetBeans(6.9)在保存時進行編譯,NetBeans會警告我已編譯的類與用JDK的編譯器編譯的類不同。 Java平臺在同一個對話框中設置爲「JDK 1.6」。 NetBeans使用哪種編譯器?爲什麼NetBeans不使用JDK編譯器?NetBeans使用哪種Java編譯器?
alt text http://img814.imageshack.us/img814/3449/compileonsave.png
在Program Files文件\的NetBeans 6.8 \ etc中有一個netbeans_jdkhome值。
它被設置爲'netbeans_jdkhome =「C:\ Program Files \ Java \ jdk1.6.0_20」',這是我的默認JDK。如果這是相關設置,則NetBeans應使用默認編譯器。 – deamon 2010-07-30 04:29:05
爲什麼不NetBeans的使用JDK編譯器?
很簡單,因爲Sun的javac
旨在用於基於批處理的編譯從命令行的權威性有效文件。 NetBeans(和其他IDE)在鍵入時進行增量編譯,而且通常還具有其他功能,例如爲無效文件創建類(因此,如果methodB
中存在語法錯誤等,則可以運行methodA
)。
針對不同要求的不同工具。
,因爲問題很長一段時間有人問,但我想,你找什麼: http://wiki.netbeans.org/FaqCompileOnSave
像Eclipse,Netbeans的不使用標準javac
,以便它可以提供包含方法的類增量編譯和彙編,有語法錯誤。與Eclipse(使用其自己的Eclipse Java編譯器)不同,Netbeans實際上使用javac的內部API進行編譯,語法突出顯示和錯誤檢測。這是一個很好的優勢,因爲Netbeans能夠處理所有最新的Java語言功能,並忠實地再現javac行爲的任何細微差別或缺陷。
來源:
你不能設置NetBeans的使用已安裝的SDK?不要忘記,NetBeans和Java現在歸Oracle所有,所以基本上NetBeans SDK實際上是一個java SDK。 – 2010-07-29 16:21:14