寻找独立的类装载机

时间:2012-07-09 13:45:50

标签: java classloader packaging ear

我有一个独立的java程序,由我自己的jar和许多依赖库组成,作为单个归档(构建wby maven,实际上总共有15个JAR文件)。有人已经有一个很好的解决方案,她/他可以向我推荐如何避免这种情况并使包装变得更聪明?

例如,像EAR档案这样的包装会很棒,但是我可以在我的非Java EE应用程序中使用任何独立的EAR类加载器吗?

2 个答案:

答案 0 :(得分:2)

Eclipse Fat Jar plugin。用他们自己的话说:

  

Fat Jar Eclipse插件是一个部署工具,可以部署   将Eclipse java项目合并为一个可执行jar。

     

它将条目“Build Fat-JAR”添加到导出向导。此外   eclipse标准jar-exporter引用的类和jar是   包含在“Fat-Jar”中,因此生成的jar包含所有需要的内容   类和可以直接用“java -jar”执行,没有类路径   必须设置,不得部署额外的罐子。

     

Jars,External-Jars,User-Libraries,System-Libraries,Classes-Folders   和插件会考虑Project-Exports。主类可以   被选中并且清单文件被合并。 One-JAR选项   集成了Simon Tuffs编写的专用类加载器(   http://one-jar.sourceforge.net/)处理一个jar文件   罐。可以排除单个文件和文件夹,也可以将其添加到jar中。   可以存储不同的设置并通过“快速构建”重新执行   上下文菜单。

答案 1 :(得分:1)

好吧,我不知道你正在使用哪个IDE。我有Eclipse Indigo(3.7)。对我来说,步骤很简单:

  1. 右键单击Java Project文件夹
  2. 点击导出
  3. 在出现的窗口中选择Java> Runnable JAR文件,然后单击下一步
  4. 在下一个窗口中,选择您希望程序在
  5. 中运行的配置
  6. 选择目标文件夹
  7. 在“库处理:”部分确保选择“将所需库提取到生成的JAR中”,这将解压缩您的库,然后将它们重新打包到已完成的.jar
  8. 点击完成
  9. 你已经完成了!享受。
  10. 如果您的eclipse版本低于Ganymede(3.4),则需要获取Fat Jar Plug-in