【发布时间】:2014-11-07 20:06:44
【问题描述】:
我在互联网上查找此内容时遇到问题,但我刚刚将我的 java 从 1.7 升级到 1.8,现在我看到不再支持 diamond 运算符。
我对此没意见,但字符串 switch 语句似乎也被删除了。这让我很困惑,因为 oracle 文档说这仍然受支持。
我可能在 Intellije 中使用了错误的 java 版本吗?
这是我的 POM maven 编译器配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<encoding>UTF-8</encoding>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
我的 Java 编译器设置也设置为 1.8(模块使用 JDK 默认)。
这实际上被弃用了吗?还是我只是做错了什么?
哪个 java 命令返回 java 8。
maven 版本也返回 java 8。
这不再起作用(如果不清楚):
switch("some string"){
case "some string":
//some code
break;
default:
//some code
}
【问题讨论】:
-
看起来更像是您的 ide 中的问题。您使用的是哪个版本的 Idea?
-
你安装了 Java 8 吗?
-
@Luiggi Intellije 12.1.7 Ultimate。
-
@MadProgrammer 是的 - 它已安装
-
相关设置不在显示的对话框中,而是在“项目结构”对话框中。检查项目设置->项目下的“项目SDK”和“项目语言级别”,并验证语言级别没有在模块级别被覆盖。
标签: java maven intellij-idea upgrade java-8