1

私はmavenプロジェクトを持っています。このプロジェクトをテスト用および本番用にコンパイルする必要があります。

production には private.key ファイルを含めないでください。私は次のように除外しました。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.4</version>
    <configuration>
        <excludes>
            <exclude>license/private.key</exclude>
        </excludes>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <mainClass>parking.application.Starter</mainClass>
                <classpathPrefix>lib/</classpathPrefix>
            </manifest>
        </archive>
    </configuration>
</plugin>

プロジェクトには Maven プロファイルがありません。この小さな例外のプロファイルを作成する必要がありますか、それとも別の方法がありますか? プロファイルを作成する必要がある場合、あまり多くのコードを繰り返さずにこれを行うにはどうすればよいですか?

4

2 に答える 2

1

プロファイルに無効なプロパティを使用し、デフォルトに real を使用するソリューションが 1 つだけ見つかりました

<profiles>
    <profile>
        <id>privateKey</id>
        <properties>
            <exclude.private.key>none</exclude.private.key>
        </properties>
    </profile>
</profiles>
<properties>
    <exclude.private.key>license/private.key</exclude.private.key>
</properties>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.4</version>
            <configuration>
                <excludes>
                    <exclude>${exclude.private.key}</exclude>
                </excludes>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                        <mainClass>parking.application.Starter</mainClass>
                        <classpathPrefix>lib/</classpathPrefix>
                    </manifest>
                </archive>
            </configuration>
        </plugin>

本番用に
実行: mvn テスト用に実行: mvn -P privateKey

于 2013-09-19T16:51:47.753 に答える
0

パラメータを使用して試すことができpackagingExcludesます。このようなもの:-

<configuration>
    <packagingExcludes>META-INF/abc.xml</packagingExcludes>
</configuration>
于 2013-09-19T16:09:04.767 に答える