2009-10-06 59 views
3

我只是好奇,但我想知道是否可以完全刪除JVM附帶的Java標準類庫並從頭開始一個新類[Class ClassPath ]。從頭開始編寫一個Java標準類庫替代

如果可能,哪些類必須實現爲最小值? (對象和字符串出現在我的腦海,但是......我不知道)。

這樣的東西打破了一些許可證?有沒有辦法對「java」命令說「不使用rt.jar」?

由於提前,

埃內斯托

+0

一個有趣的問題。我不認爲標準庫是在語言規範或VM規範中定義的;它只是定義它的API文檔? – 2009-10-06 21:53:06

+0

@mmyers - 有一個技術兼容性工具包,其中的Apache軟件基金會有很多話要說:http://en.wikipedia.org/wiki/Apache_Harmony#Difficulties_to_obtain_a_TCK_license_from_Sun – McDowell 2009-10-06 22:17:56

回答

5

可以使用-Xbootclasspath選項來指定自己的一組核心類。

如果你確實走上了這條道路,如果你打算也使用第三方庫,那麼你很可能會面臨很多問題,因爲它們將取決於核心API,並且你的版本中的任何不一致都可能導致錯誤。

作爲絕對最小值,您可能不得不重新實現java.lang包中的所有內容。與對象和字符串一樣,原始包裝類也需要存在才能使自動裝箱工作。我不認爲你可以用一些本地代碼來代替java.lang來使線程工作。

0

不,根本不可行。我的意思是,當然,你可以這樣做,但你不會比擁有多年經驗和大量Java專家的大型公司或開源項目做得更好。儘管找到它可能很有趣。

+0

yesss!我正在思考這個有趣的部分! ;) – ebasconp 2009-10-06 23:47:46