当我清理和构建时,Netbeans为我的Java项目生成一个.jar文件,它使用一个“lib”文件夹,其中包含我使用的所有外部Jar文件。我能以某种方式告诉Netbeans将这些Jar文件打包到它所生成的.jar中吗?这样我就可以将我的项目作为一个独立的.jar文件运行了吗?
我在Mac OSX上使用Netbeans 7.1.1
答案 0 :(得分:1)
简短的回答是否定的,答案很复杂。
首先,Java不支持嵌入式Jars(即,您不能简单地将依赖的Jars添加到主Jar中)。
其次,解压缩所有Jars并将它们合并为一个将覆盖共享相同路径/名称的任何资源/类。这在小型项目中可能不是问题,但在大型项目中是一个主要问题(我在工作中正在研究这个问题)。
一种解决方案是使用类似One-Jar的东西,它基本上使用它自己的引导类加载器来引导你在一个Jar中嵌入的Jars。
使用我们自己的自定义类加载器时遇到了这个问题,但是看起来效果不错。
它包含Ant支持,因此您可以将其包含在项目Ant构建脚本中,如果您不使用Maven,否则,您需要设计自己的构建过程
答案 1 :(得分:0)
netbeans中没有选项可以做到这一点。
快速搜索还有其他一些选项,但需要人工干预。