私はmavenスプリングプロジェクトを取得しましたが、実行しようとすると、それについて...いくつかのアイデアが...
次はエラーメッセージです。
BUILD FAILURE
------------------------------------------------------------------------
Total time: 4.532s
Finished at: Wed Jul 26 16:04:06 COT 2017
Final Memory: 17M/196M
------------------------------------------------------------------------
Failed to execute goal org.Apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce
(enforce-versions) on project SIMI: Some Enforcer rules have failed. Look above for
specific messages explaining why the rule failed. -> [Help 1]
To see the full stack trace of the errors, re-run Maven with the -e switch.
-Xスイッチを使用してMavenを再実行し、完全なデバッグログを有効にします。
エラーと考えられる解決策の詳細については、次の記事を参照してください。[ヘルプ1] http://cwiki.Apache.org/confluence/display/MAVEN/MojoExecutionException
この問題の原因の1つは、プロジェクトのPOMファイルに必要なJavaまたはmavenバージョンが設定されていることです。それを見つける必要があります...しかし、どうすればよいですか?私のようなあなたのプロジェクトのエンフォーサー...(私は同じ問題があり、エンフォーサープラグインが私のプロジェクトのPOMで定義されていないために混乱してしまい、それを見つけることができませんでした)。
エンフォーサプラグインは"effective pom"にあり、確認する必要があります。 Effective pomは、スーパーpom +プロジェクトpomから作成された構成ファイルです。 mavenはこの構成ファイルを使用して、関連する目標を実行します。開発者がpom.xmlで最小構成の詳細を指定するのに役立ちます。構成は簡単に上書きできますが。
効果的なpomを表示するには、2つの方法があります。1-mavenコマンドを使用して、次のコマンドを実行します。
mvn help:effective-pom
2- IDE:Mavenウィンドウでプロジェクトノードを右クリックして、有効なPOMの表示を選択します(IDEによって異なります)。
あなたの力が何であるかを見つけた後、あなたはあなたのプロジェクトでそれを見つけ、それを変更することができます。私にとって、私の有効なPOMには、Javaを使用するためのrequireMavenVersionルールが1.8であったエンフォーサプラグインがありました。そのため、プロジェクトのJDKバージョンを1.8に変更し、幸いにも問題は解決しました。
この回答がお役に立てば幸いです。
誰かが特定のMavenバージョンを実行している可能性があります。
次のメッセージが表示された場合:
[警告]ルール0:org.Apache.maven.plugins.enforcer.RequireMavenVersionが次のメッセージで失敗しました:検出されたMavenバージョン:3.5.4は許容範囲[3.5.2,3.5.2]にありません。
次に、Mavenインストールを指定された範囲内のものに変更します。この例では、バージョン3.5.2のみが許可されています。
1.4.1
のバージョンmaven-enforcer-plugin
を使用していて、このエラーが発生した場合は、古いバージョンのmaven-enforcer-plugin
を使用する必要があります。以下のMaven依存関係を見つけることができます:
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.3.1</version>
</plugin>
他のバージョンは以下のリンクから見つけることができます。
https://mvnrepository.com/artifact/org.Apache.maven.plugins/maven-enforcer-plugin
また、Mavenのバージョンを確認してください。 maven 3.0.x
を使用している場合は、maven-enforcer-plugin 1.4.1
を使用する必要があります。
Java(Java)がバージョン8でJavaコンパイラ(javac)がバージョン11だったため、この問題が発生しました。
これは、バージョンを手動で切り替える必要がある場合、Windowsユーザーにとって一般的です。
最初にバージョンを確認してください:
Java -version
javac -version
IntelliJのアイデアなど、IDEを使用する場合は、プロジェクトの設定も注意深く検討することをお勧めします。 IDEによって生成されたファイルを完全に削除し、プロジェクトを再度インポートすることは理にかなっています。
私は同じ問題に直面し、pomバージョンを修正することで解決しました。以下のコマンドは、すべてのサブpomで正しく実行されず、異なるpomバージョンが発生しました。 'mvn versions:set -DnewVersion = $ {NEW_VERSION} versions:commit'依存しているpomがある場合、すべてのママが同じバージョンを持っているかどうかを確認します。