Javaプロジェクトで作業を開始し、IntelliJを使用してGitHubからソースコードをダウンロードしました。これまでIntelliJを使用したことはありませんが、はるかに良いIDEはEclipseよりも使用します(これは、最後にJava開発-約4年前に使用したものです)。
GitHubから最新の作業バージョンを取得して、コンピューター上でローカルにソースをビルドしようとすると、いくつかの異なるコード行でコンパイルエラーが発生します。
エラー:(27、34)Java:ダイヤモンド演算子は-source 1.5ではサポートされていません(ダイヤモンド演算子を有効にするには-source 7以降を使用してください)
これらのコンパイルエラーが表示される行は、次のような行です。
return new ArrayList<>(0);
行を選択して、Alt + Enter
エラーでは、次のことができることを示すメッセージが表示されます。
「言語レベルを7-ダイヤモンド、ARM、マルチキャッシュなどに設定します」
ただし、このオプションを選択しても何も起こりません...
の中に pom.xml
ファイルには、次のxmlがあります。
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>${maven-source-plugin.version}</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
しかし、このエラーを調べたところ、 この言語レベルではダイヤモンドタイプはサポートされていません で答えが見つかりました。これは、maven1.7以上を使用する必要があることを示し、プロジェクトはすでにバージョン1.8を使用しているため、このコンパイルエラーが発生する理由がわかりません...
誰か提案がありますか?
次のコードをpom.xmlファイルに追加します。
<!-- maven-compiler-plugin -->
<build>
<plugins>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>