0

Mavenでは、コンパイラプラグインを使用して、次のことができます

mvn compile

そしてプロジェクトをコンパイルします。私が必要とするのは、プロジェクトをコンパイルして、他のことをすることです。

たとえば、ANT では次のことができます。

public class Main extends Javac13 {
    @Override
    public boolean execute() throws BuildException {
        System.out.println("Main::execute");
        attributes.log("Using modern compiler", Project.MSG_VERBOSE);
        Commandline cmd = setupModernJavacCommand();

        try {
            int result = com.sun.tools.javac.Main.compile(cmd.getArguments());
            return result == 0;
        } catch (Exception ex) {
            if (ex instanceof BuildException) {
                throw (BuildException) ex;
            } else {
                throw new BuildException("Error starting modern compiler", ex, location);
            }
        }
    }

    @Override
    public void setJavac(Javac javac) {
        System.out.println("Main::setJavac " + javac);
        super.setJavac(javac);
    }
}

この方法で起動します:

 ant -Dbuild.compiler=com.moc.Main ...

上記のクラスがコンパイラーになり、ANT から提供されたコマンドラインを使用して、やりたいことが何でもできます。また、build.xml ファイルに手を加える必要がないことも素晴らしい点です。システムプロパティを設定するだけです。

Mavenにこのようなものはありますか?

4

1 に答える 1

0

少し前にノックアップしたsystem-properties-maven-pluginを見ることができます。pom.xml でシステム プロパティを定義できます。USAGEファイルを見てください。

プラグインには 2 つの目標があります。1 つはプロパティを設定すること ( set) で、もう 1 つはプロパティを元の状態に戻すこと ( reset) です。

于 2013-03-06T17:16:24.633 に答える