我想使用Eclipse重新组织我的可执行文件.JAR(资源、外部库和application.class文件)中的所有文件。
我所拥有的:
My.JAR
> folder "com" for external library 1 (com.apple.***)
> folder "org" for external library 2 (org.javasypt.***)
> folder "main" (package)
>> .class files
> folder "resources"
>> all resources files (images, texts...)
> folder "META-INF"
>> "MANIFEST.MF" file
我想要的:
My.JAR
> folder "main"
>> folder "resources"
>>> all resources files
>> folder "libraries"
>>> external library 1 (com.apple.***)
>>> external library 2 (org.javasypt.***)
>> .class files
> folder "META-INF"
>> "MANIFEST.MF" file
有可能得到这个吗?谢谢
否,JAR文件规范规定了一个特定的结构。您试图将人类的组织和运行时的组织混合在一起,但这两个概念是不同的。无论如何,按照您认为合适的方式组织您的源代码,但您不能期望运行时(JVM)理解任何任意的结构。这就是为什么存在构建工具(gradle、maven、ant等)来帮助准确地生成JAR规范结构。
要意识到,在您的示例中,org
和com
并不是真正的文件夹,它们是包结构中的节点(级别)。你的main
也是一样——它只是一个包裹。
resources
是您唯一具有一定灵活性的东西,因为您可以随心所欲地命名它,只要从中读取内容的代码知道该名称即可。
META-INF
和清单文件由规范指定,不能更改或重新定位。