43

ビルドからフォルダーを除外しようとしていますsrc/main/resources/scripts/が、以下は機能しません:

<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <excludes>
                <exclude>src/main/resources/scripts/</exclude>
            </excludes>
        </resource>
    </resources>

    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <excludes>
                    <exclude>src/main/resources/scripts/</exclude>
                </excludes>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
    </plugins>
</build>

何か案は?

4

4 に答える 4

62

代わりに試してください:

<exclude>scripts/**</exclude>

除外はディレクトリに基づいているため、構築すると除外されます

src/main/resources/src/main/resources/scripts
于 2014-08-12T11:16:15.430 に答える
9

同様の問題があり、次の問題が見つかりました。

  • の構成をすでに定義している親 pom がある場合がありますmaven-compiler-plugin。このために、タグに追加combine.self="override"します。configurationMavenを参照してください:親 POM のプロファイルに対して既に定義されているプラ​​グインの構成をオーバーライドすることは可能ですか?
  • コンパイルのために除外されたクラスが必要な場合、プラグインは除外を無視するようです: コンパイルされる他のクラスから除外されたクラスを参照していないことを確認してください。たとえば、 を除外するFoo.javaと、 がコンパイルされてコンパイルされますBar.java(import Foo;しようとします) 。Foo.javaBar.java

例えば:

<profiles>
    <profile>
        <id>myId</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration combine.self="override">
                        <excludes>
                            <exclude>**/some/full/directory/*</exclude>
                            <exclude>**/some/single/File.java</exclude>
                        </excludes>
                    </configuration>
                </plugin>
            </plugins>
        </build>
</profile>
于 2016-09-12T12:39:34.837 に答える