Eclipse maven ear项目部署

时间:2014-10-02 11:49:35

标签: eclipse maven deployment module ear

我有一个模块化的maven项目。 在顶层,我得到了:

    <modules>
    <module>base</module>
    <module>module1</module>
    <module>module2</module>
    <module>ear</module>
    </modules>

基础模块被打包为jar。 module1和module2为war,依赖于基本模块。 Ear项目依赖于module1和module2并相应地打包它们。 module1和module2的pom完全相同!!

除了从eclipse部署到本地服务器之外,一切都很完美。问题是module2在已部署的ear的lib文件夹中缺少base.jar。然而,module1有它!如果我从命令行运行mvn install,它也包含在目标lib文件夹中!在eclipse中,所有依赖都被解决了!

我已经尝试了我能想到的一切:

  • 重新导入项目,
  • 清理所有与eclipse相关的文件,
  • 清理本地maven存储库,
  • 清理服务器tmp文件夹并重新添加项目
  • 进行maven更新并安装

到目前为止没有任何帮助。

干杯

编辑:

我做了一个令人恐惧的发现: 我添加了一个名为&#34; amodule&#34;的模块。猜猜是什么,它得到了所需的罐子而其他人没有。似乎只有按字母顺序排列的第一个模块才能获得jar,而其他模块则没有。

1 个答案:

答案 0 :(得分:0)

我的解决方案是在包含基本模块的项目中取消选中“解析工作区依赖关系”。 (项目 - &gt;首选项 - &gt; maven - &gt;取消选中:解析工作区依赖项)

它带来了副作用:在调试过程中,base.jar的处理方式与模块中的外部jar一样。可以指定源代码路径,但我不能在基础项目中设置断点并等到调试器到达该行。