我正在处理最近转换为使用Maven的现有项目。它是Websphere Application Server 7.0的多模块EAR项目。
我们当前的开发环境是Eclipse Juno,其中包含市场上最新版本的m2e-wtp插件和Websphere 7.0开发工具。
我们希望能够在本地运行的Websphere服务器上使用Eclipse进行调试和测试,因此我们一直在尝试使用m2e-wtp插件来利用Eclipse功能。我们一直在处理各种问题,但是我有一个问题,我现在正在努力解决这个问题。
我们工作区中的项目面向Websphere Application Server服务器运行时。这使项目可以访问Websphere运行时库。此外,在Project Explorer视图中,项目中有一个标记为“Websphere Application Server 7.0”的容器。如果展开该容器,它将显示库中的jar。
现在是棘手的部分。只要在项目上启用Maven特性,项目中的Websphere Application Server容器就会为空。我们开始从运行时库中缺少类中获取错误,因此我们知道项目不再能够访问库中的jar。
maven构建工作正常,我们可以通过服务器的管理控制台加载生成的EAR并运行,但我们必须使用服务器日志手动调试。我们尝试过各种版本的Websphere工具,m2e和Eclipse。我没有将此问题与早期版本的Websphere工具一起使用,但它与m2e插件的最新版本不完全兼容。但是我们需要最新版本的m2e插件才能正确配置Eclipse项目。如果项目配置不正确,Eclipse无法将其加载到服务器上进行测试/调试。
我可以在某处手动配置服务器运行时库吗?到目前为止,我能做的最好的事情就是将所需的jar直接添加到类路径中。一旦我删除了Maven的性质,它就会恢复正常。但是我们当然不再拥有Maven依赖。
答案 0 :(得分:1)
我们在工作地点遇到过类似的问题。我们刚刚添加了以下maven依赖项:
<dependency>
<groupId>javaee</groupId>
<artifactId>javaee-api</artifactId>
<version>5</version>
<scope>provided</scope>
</dependency>
显然,这并不是您正在寻找的解决方案,但我怀疑Maven插件和Eclipse之间存在一个错误。希望真正的解决方案来自这个错误条目:https://bugs.eclipse.org/bugs/show_bug.cgi?id=443148。
上述
的附录添加上述依赖项后,我们仍遇到问题。在解决此问题之前,最好坚持使用maven CLI plugin。看到Eclipse插件存在这样一个关键问题令人失望。