0

pom.xml を作成したプロジェクトがあります。ただし、ビルド システムとして Maven を使用していません。別のもの (ANT など) を使用しています。しかし、IDE などの他のツールを使用するために pom.xml を存在させたいと考えています。誰かが私のプロジェクトをダウンロードして Maven でビルドしようとした場合、彼らが間違ったことをしていることを明確に示すにはどうすればよいですか?

4

1 に答える 1

0

以下を pom.xml に追加します。

   <properties>
      <maven.build.not.supported>
         Do not use Maven to build this module. Please see README.html for
         instructions on how to build it.
      </maven.build.not.supported>
   </properties>
   <build>
      <plugins>
         <plugin>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
               <execution>
                  <id>fail-clean-lifecycle</id>
                  <phase>pre-clean</phase>
                  <configuration>
                     <tasks>
                        <fail message="${maven.build.not.supported}" />
                     </tasks>
                  </configuration>
                  <goals>
                     <goal>run</goal>
                  </goals>
               </execution>
               <execution>
                  <id>fail-default-lifecycle</id>
                  <phase>validate</phase>
                  <configuration>
                     <tasks>
                        <fail message="${maven.build.not.supported}" />
                     </tasks>
                  </configuration>
                  <goals>
                     <goal>run</goal>
                  </goals>
               </execution>
               <execution>
                  <id>fail-site-lifecycle</id>
                  <phase>pre-site</phase>
                  <configuration>
                     <tasks>
                        <fail message="${maven.build.not.supported}" />
                     </tasks>
                  </configuration>
                  <goals>
                     <goal>run</goal>
                  </goals>
               </execution>
            </executions>
         </plugin>
      </plugins>
   </build>

明らかにプラグインの実行を複数のフェーズにバインドすることはできないため、組み込みのライフサイクル (クリーン、デフォルト、およびサイト) ごとに 1 回ずつ、実行ブロックを 3 回繰り返す必要があります。失敗メッセージの重複を避けるために、Maven プロパティに保存し、各実行でそのプロパティを再利用します。各実行では、ライフサイクルの最初のフェーズにバインドして、すぐに失敗させます。

于 2013-05-02T02:02:32.273 に答える