まず、私のタイトルは恐ろしいものであると認めます。私の質問を聞いた後、誰かがより適したタイトルを思いつき、投稿のこの部分を削除したら、それを自由にしてください。Mavenを使ってJavaコンパイルのバージョンを指定する機能
マルチキャッチ例外ブロックのため、最近mvn clean install
のコンパイルエラーが発生しました。その苦情error: multi-catch statement is not supported in -source 1.5
。かなりストレートです。
私-mvn version
と-java version
の両方が、それは1.8
を示し、Java Build Path
がjre1.8.X
で私JRE System Library
を示しJava Compiler
下1.8
でとEclipseで私を示すことを除いて。
この投稿へのリンク:Why can't java 7 use diamond operator and multi-catch statementその回答を試みました。だから私のポンポンの<build><plugins>
に私が挿入された:
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
は今も元気構築します。基本的なレベルでは、これはコンパイラに、Java 1.8
を使うべきであることを伝えていることを理解しています。しかしどうですか?そして、私がこれを私のpom.xml
に入れるまで、他のすべてが1.8
に設定されていたことは、一見問題ではありませんでしたか?私はマルチキャッチブロックを持っていなかったので、このプラグインタグの前にうまく構築していたので、何が変わったのですか?
echo%JAVA_HOME%は何を出力しますか? –
@ Jean-FrançoisSavard投稿前にトラブルシューティングを行う場合、実際は同じ考えがありました。それは 'Java 8'でもありましたが、M2_HOMEはJava 7を使っていましたが、これも8に切り替えました。だから、 'Java 6' –
のEclipse設定は、' mvn'の動作や 'mvn'のデフォルト設定に影響を与えませんでした。現在は' 1.5'です。 –