Maven app-assembler,assembly和classpath:config目录冲突

时间:2012-08-24 17:02:01

标签: eclipse maven appassembler

我正在使用app-assembler Maven插件来创建我的Java应用程序的安装。我希望在文件系统中而不是在任何Jar文件中提供一些数据(属性和一些用户生成的数据)。

app-assembler允许我通过在类路径中添加config目录来实现这一目的。

运行我的一些测试需要相同config目录的内容。因此,我在Maven配置中声明该目录是一个资源。

以下是发生断开连接的地方:如果我将配置目录资源的targetPath设置为“config”,则汇编(非app-assembler)插件很容易将其选中以进行打包,但类路径URL部署的应用程序和Eclipse之间会有所不同:部署的应用程序会认为URL是classpath:/default.properties,而在Eclipse内部,URL是classpath:/config/default.properties。如果我将targetPath设置为空(直接安装在classes下,则类路径URL在Eclipse和已部署环境之间匹配,但是在组装插件配置中没有很好的方法可以选择配置数据。

目前我正在使用第二个选项,并将config目录中的所有内容放入classes

更好的解决方案可能是在Maven中创建另一个类路径目录,类似于classestest-classes,但我不知道该怎么做。

所以我有两个问题:

  • 我在资源,汇编和app-assembler插件中遗漏了哪些东西?
  • 或者如果不是,那么我如何在Maven / Eclipse环境中将config目录添加到类路径中,就像在部署环境中由app-assembler脚本添加一样?

使用的版本:Maven3,app-assembler 1.2.2,

0 个答案:

没有答案