我刚开始在一个Java项目上工作,已从GitHub下载了源代码,并使用IntelliJ进行开发 - 我以前从未使用过IntelliJ,但有人告诉我它比Eclipse更好用(我上一次进行Java开发是大约四年前)。
当我尝试在计算机上本地构建源代码时,从GitHub中拉出最新的工作版本时,我会在几个不同的代码行上遇到编译错误 - 错误信息如下:
Error:(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>
但是当我查找这个错误时,我在Diamond type are not supported at this language level找到了答案,它表明我应该使用maven 1.7或更高版本-而且看起来项目已经在使用1.8版本,所以我不明白为什么会出现编译错误...
有人有任何建议吗?