在Maven WAR中过滤Java类



我在Maven WAR中遇到Java类过滤问题。Maven编译了很多Java类,它们都出现在

中。
target/classes

和我有这样的包:

a/A.class
a/b/B.class
a/b/C.class

到目前为止是可以的。但是我需要的是在

里面有一个Java类
WEB-INF/classes

像这样:

a/b/B.class

这是插件的部分从我的pom.xml:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.4</version>
    <configuration>
        <warName>${project.artifactId}</warName>
        <webXml>${basedir}/src/main/application/WEB-INF/web.xml</webXml>
        <packagingExcludes>WEB-INF/lib/*.jar,a/A.class,a/b/C.class</packagingExcludes>
        <webResources>
            <resource>
                <directory>${basedir}/src/main/application/WEB-INF</directory>
                <includes>
                    <include>jboss-web.xml</include>
                </includes>
                <targetPath>WEB-INF</targetPath>
            </resource>
            <resource>
                <directory>${basedir}/src/main/application/META-INF</directory>
                <includes>
                    <include>standard-jaxws-endpoint-config.xml</include>
                </includes>
                <targetPath>META-INF</targetPath>
            </resource>
        </webResources>
    </configuration>
</plugin>

不幸的是,所有的类都被打包到我的WAR中。

提示吗?

最诚挚的问候,SK

我相信这将根据构建在目标目录中的应用程序的相对位置过滤类。这意味着在这个阶段,您的类文件存储在WEB-INF/classes中。

试着改变这个:

<packagingExcludes>WEB-INF/lib/*.jar,a/A.class,a/b/C.class

<packagingExcludes>WEB-INF/lib/*.jar,WEB-INF/classes/a/A.class,WEB-INF/classes/a/b/C.class

最新更新