2

現在、約 100 個のモジュールを持つ大規模な Maven プロジェクトに取り組んでおり、そのうちのいくつかにはサブモジュールもあります。一部のモジュールは Maven Build Number プラグインを使用します。プロジェクトは、Subversion の下でホストされています。

最近、開発チームで git をローカルで使用し始めました。Subversion リポジトリのクローンを作成し、プロジェクトをビルドしようとした後、次のよく知られたエラーを受け取りました。

The svn command failed.
Command output:
svn: ‘.’ is not a working copy

残念ながら、私たちの場合、新しいプロファイルを作成したり、POM からプラグイン定義を削除したりすることはできません (これにより、何百もの POM ファイルが台無しになります)。次の記事を見つけましたhttp://abstractionextraction.wordpress.com/2012/09/27/git-svn-vs-maven-build-number-plugin/しかし、正直なところ、それは私が本当にやりたいことではありません.. .

このプラグインを無効にするスマートな方法はありますか。コマンドラインパラメータのような?

4

3 に答える 3

0

mojo documentation に従って、プロパティを使用できrevisionOnScmFailureます。

ただし、コマンド ライン オプションはありません。これらの pom.xml ファイルを変更する必要があります。

Maven Java Plugin Development Guide の「Defining Parameters Within a Mojo」を参照してください。

于 2012-10-08T17:32:06.580 に答える
0

1 つの方法は、以下に示すように、pom でプロパティを使用してビルド番号プラグインの実行フェーズを指定することです。

<project>
  ..
  <properties>
    <buildnumber.plugin.phase>validate</buildnumber.plugin.phase>
    ..
  </properties>
  ..
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>buildnumber-maven-plugin</artifactId>
      <version>1.2</version>
      <executions>
        <execution>
          <phase>${buildnumber.plugin.phase}</phase>
          <goals>
            <goal>create</goal>
          </goals>
        </execution>
      </executions>
      <configuration>
        ..
      </configuration>
    </plugin>
  </plugins>
  ..
</project>

次に、次の例に示すように、コマンド ラインでプロパティを指定してプラグインを無効にします。

mvn install -Dbuildnumber.plugin.phase=none
于 2013-04-08T13:21:37.713 に答える