3

プロジェクト A からプロジェクト B を継承します。プロジェクト A では、Maven からダウンロードした jar ファイルを lib フォルダーにコピーする必要があります。プロジェクト A の pom ファイル:

<groupId>com.penguin.com.projecta</groupId>
<artifactId>penguin-common--pom</artifactId>
<packaging>pom</packaging>
<version>${com.penguin.common.projecta}</version>
<name>Penguin COMMON POM</name>

<modules>
    <module>projectb</module>
</modules>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <executions>
                <execution>
                    <id>copy-jars</id>
                    <phase>process-sources</phase>
                    <goals>
                        <goal>copy</goal>
                    </goals>
                    <configuration>
                        <overWriteIfNewer>true</overWriteIfNewer>                
                        <artifactItems>
                            <artifactItem>
                                <groupId>ant-contrib</groupId>
                                <artifactId>ant-contrib</artifactId>
                                <version>1.1</version>
                                <type>jar</type>
                                <destFileName>ant-contrib.jar</destFileName>
                                <outputDirectory>lib</outputDirectory>
                            </artifactItem>
                        </artifactItems>
                    </configuration>
                </execution>
            </executions>
        </plugin>        
    </plugins>
</build>

私がビルドすると、mavenはjarファイルをlibフォルダーにコピーしましたが、プロジェクトBにlibフォルダーも作成し、プロジェクトAのpomファイルで定義されたjarファイルをそこにコピーします。プロジェクト B で除外したいのですが、以下のスクリプトを試してみましたが、うまくいきません。

<dependencies>
    <dependency>
        <groupId>com.penguin.com.projecta</groupId>
        <artifactId>penguin-common--pom</artifactId>
        <version>${com.penguin.common.projecta}</version>
        <type>pom</type>
        <exclusions>
            <exclusion>
                <groupId>ant-contrib</groupId> 
                <artifactId>ant-contrib</artifactId>                        
            </exclusion>
        </exclusions>
    </dependency>
</dependencies>

このリンクを参照してください:親 POM から継承されたアーティファクトを除外する方法はありますか? . しかし、それも私を助けません。

4

2 に答える 2