首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当使用maven-jetty-plugin运行战争时,在类路径上重复覆盖。

当使用maven-jetty-plugin运行战争时,在类路径上重复覆盖。
EN

Stack Overflow用户
提问于 2016-12-15 11:25:10
回答 1查看 375关注 0票数 1

在我的项目中,我使用战争覆盖。在src/main/resources中的第一次基本战争中,我有文件my-file.txt。第二次战争取决于第一次战争。第二次war有一个在类路径上查找my-file.txt的代码:

代码语言:javascript
复制
Enumeration<URL> urls = MyListener.class.getClassLoader().getResources("my-file.txt");
while (urls.hasMoreElements()) {
    System.out.println("This is my resource:" + urls.nextElement());
}

我的输出是(mvn jetty:run):

这是我的resource:jar:file:/C:/Users/michaldo/.m2/repository/war-plus-war/war1/0.0.1-SNAPSHOT/war1-0.0.1-SNAPSHOT-classes.jar!/my-file.txt 这是我的resource:jar:file:/C:/Users/michaldo/workspace-n1/war-plus-war/war2/target/tmp/war1-0__1-SNAPSHOT_war1/WEB-INF/lib/war1-0.0.1-SNAPSHOT.jar!/my-file.txt

我可以配置maven jetty插件并避免重复吗?

我的maven-war-plugin配置(jetty有默认配置):

代码语言:javascript
复制
<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>3.0.0</version>
    <configuration>
        <archiveClasses>true</archiveClasses>
        <attachClasses>true</attachClasses>
        <dependentWarExcludes>
            WEB-INF/lib/*-*.jar
        </dependentWarExcludes>
    </configuration>
</plugin>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-20 08:31:36

问题是dependentWarExcludes被废弃了(甚至在maven-war-plugin3.0中也不支持)。

当我将排除移到覆盖配置时,Maven Jetty插件可以像预期的那样工作:

代码语言:javascript
复制
<build><plugins><plugin>
  <artifactId>maven-war-plugin</artifactId>
  <configuration>
    <overlays>
      <overlay>
        <groupId>war-plus-war</groupId>
          <artifactId>war1</artifactId>
          <excludes><exclude>
              WEB-INF/lib/*-*.jar
          </exclude></excludes>
        </overlay>
     </overlays>
   </configuration>
</plugin></plugins></build>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41162989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档