2011-02-25 80 views
0

我正在开发一个简单的独立命令行Java应用程序。该项目由Maven管理。我想建立一个交付物,可以在客户机上复制并运行。Maven程序集插件:构建可分发的Java SE应用程序

我使用的行家组件的插件,所期望的输出是包含单一zip文件:

  • my_product.jar:只有我的类,而不依赖
  • LIB /:包含所有lib文件夹在格式的.jar的依赖关系(如LIB/log4j.jar,LIB /公地lang.jar)
  • 的启动脚本文件(从某处项目复制)

如何来描述这个在assembl y描述符文件?我无法在程序集中创建my_product.jar。

回答

0

预定义的'jar-with-dependencies'程序集是一个笑话。该问题已通过外部协助和pom.xml和组装描述符的大量定制解决。

看起来,如果你偏离标准的Java EE/webapp路径走向独立的应用程序,那么你必须为广泛的Maven定制做准备。

+0

你介意共享程序集描述符吗? – Guus 2012-03-03 19:04:28

+0

对不起,无法再访问 – Karl 2012-03-05 14:53:50

+0

不用担心:我发现这是非常有用的:http://www.petrikainulainen.net/programming/tips-and-tricks/creating-a-runnable-binary-分布与 - 行家组装-插件/ – Guus 2012-03-06 20:03:34

1

你看过预定义的组合jar-with-dependencies吗?它应该适合您的需求。

请参阅this answer了解有关使用maven创建可执行JAR分布的详细讨论。