可以像eclipse(和m2e)那样对待WEB-INF \ lib吗?

时间:2014-06-18 13:38:14

标签: eclipse maven maven-3 m2e m2e-wtp

我有一个servlet / jsp web项目,可以在eclipse上正常运行并导出为war war(once I clean it that is)。我将该项目从WEB-INF\lib文件夹中删除了所有依赖项,除了自制jar (工作区中另一个项目的输出)。当我运行package maven目标时,我会从这个jar中获取缺少类的消息:

[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
#..... NOTICE THIS COMES FROM A CUSTOM JAR
[ERROR] /C:/path/DataServlet.java:[3,30] package xxx.java.helpers does not exist

现在已经问过before,最严格的解决方案似乎是创建一个本地回购:Can I add jars to maven 2 build classpath without installing them?(注意:我在maven 3 )。< / p>

我想避免这种情况 - 所以有没有什么方法maven只会把这个jar填充到WEB-INF\lib war中的cp

欢迎使用一些maven插件来WEB-INF\lib战争中<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/> 内容的解决方案 - 尽管我只是觉得应该有一个考虑到&#34的解决方案;特殊&#34;此文件夹的性质。

观察:

  • Alt + F5删除了这一行:

    WEB-INF\lib

    对应于&#34; Web App库&#34;在Java Build Path中。因此,不仅maven拒绝考虑.classpath - 它还完全打破了日食的构建路径。

相关:

1 个答案:

答案 0 :(得分:1)

您是否将此jar从WEB-INF \ lib添加为依赖项,如下所示:

<dependency>
  <groupId>someGroupId</groupId>
  <artifactId>someArtifactId</artifactId>
  <version>1.0.0</version>
  <scope>system</scope>
  <systemPath>${basedir}/src/main/webapp/WEB-INF/lib/homebrew jar</systemPath>
</dependency>