1

maven-compiler-pluginを使用するMavenWebアプリがあります。数日前、アプリを正常にコンパイルして実行できましたが、何かが発生し、コンパイルが失敗して次のエラーが発生しました。

[ERROR] Failure executing javac, but could not parse the error:
javac: -endorseddirs requires an argument
Usage: javac <options> <source files>

コンパイラと関係がありますが、理解できません。これが私のpom.xml(プラグインだけ)です:

    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
                <compilerArguments>
                    <endorseddirs>${endorsed.dir}</endorseddirs>
                </compilerArguments>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.1.1</version>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>2.1</version>
            <executions>

            </executions>
        </plugin>
    </plugins>

私はこのようないくつかの解決策を試しました。

4

2 に答える 2

1

私の知る限り、これ${endorsed.dir}は標準のMavenプロパティではありません。${endorsed.dir}この例を実際の値に置き換えずにどこかからコピーしましたか?または、この値を他の場所で定義しましたpom.xmlが、削除されましたか?

この場合、Mavenはフィールドを空白として扱い、コンパイラーが-endorseddirsパラメーターの引数を受け取らないことを想像できます。

于 2012-09-03T07:47:19.790 に答える
0

Javaコンパイラは${endorsed.dir}POM内のプロパティを見つけることができません。POMで定義されていることを確認してください。によってPOMの構成を確認するにはmvn help:effective-pom、すべての構成を因数分解した後の実際のPOMが表示されます。

于 2012-09-03T12:03:04.030 に答える