Maven - IntelIJ - -source 1.6中不支持switch中的字符串

时间:2018-03-09 09:18:09

标签: java maven appium

我正面对这个问题,终端说:

  

[错误]无法在项目上执行目标org.apache.maven.plugins:maven-compiler-plugin:3.1:compile(default-compile)FloAutomation:编译失败   -ERource 1.6中不支持[ERROR] /Users/hai/workspaces/automation-for-iPad/src/main/java/Locators/ObjectRepository.java:[19,19]中的字符串   [错误](使用-source 7或更高版本来启用交换机中的字符串)

我已经检查了他们说的JAVA_HOME和java版本:

  

$ JAVA_HOME   /Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home

     

java版

     

java -version java version" 9.0.4" Java(TM)SE运行时环境   (build 9.0.4 + 11)Java HotSpot(TM)64位服务器VM(版本9.0.4 + 11,   混合模式)

我还检查了项目的语言级别9.0.4

你能帮我解决一下吗? 谢谢,

2 个答案:

答案 0 :(得分:2)

添加到您的pom.xml,然后刷新maven:

<project>
  [...]
  <properties>
    <maven.compiler.source>1.9</maven.compiler.source>
    <maven.compiler.target>1.9</maven.compiler.target>
  </properties>
  [...]
</project>

由于您使用的是Java 9,因此该值应为1.9或错误显示为:1.7或更高。

答案 1 :(得分:1)

仅在Java 7中添加了对String - 类型的切换表达式的支持。因此,您需要设置的最小值为1.7

查看this doc page了解详情。