2010-08-08 107 views
0

我是java編程語言的新手。如何在運行時創建包?

你能告訴我如何在運行時創建一個包嗎?(我的意思是在編譯程序時)。

+2

運行時編譯時相反。 – relet 2010-08-08 10:55:09

+2

你的意思是一個真正的java包(例如「java.lang包」)或一個可分發的包(如「jar文件」)? – 2010-08-08 10:58:30

+0

你爲什麼要在運行時創建一個真正的java包?你的意思是一個jar文件嗎? – 2010-08-08 11:02:41

回答

5

我想你誤會了「包裝」的概念。

包是一個類的組織,它與目錄結構非常相似,但是有一個約定,它們應該以作者的DNS域名開頭顛倒。

您可能需要閱讀Java教程。相應的頁面是http://download.oracle.com/javase/tutorial/java/package/packages.html

+0

非常好的答案。我給+1 – 2010-08-08 11:05:26

+0

@ThorbjørnRavnAndersen可以補充說,Class對象有一個getPackage()方法,它返回一個java.lang.Package的實例。這個類有一個私有構造函數,我假設可以在運行時使用反射來創建包:** Package p = Package.class.getConstructor(String.class,Manifest.class,URL.class,ClassLoader.class).newInstance( 「str」,myManifest,someUrl,aClassLoader); ** – Hervian 2016-03-24 19:56:36

+0

@Hervian我認爲你也誤解了包的概念。 – 2016-03-24 22:35:11

0

如果你的意思是部署包的創建,見izPack, 定位爲「爲包裝的一站式解決方案,分發和部署應用程序。」