有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java:如何确保命令行编译使用正确的Java版本?

我正在从Java1.6过渡到Java7。它进行编译,但在使用字符串的switch语句上出现incompatible types错误(编译器抱怨它应该是int类型):

switch ("hello") {
   ...
}

因此,我认为它没有看到版本7。但是,当我键入java -version时,我看到:

java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)

当我键入javac -version时,它显示javac 1.6.0_30。如何解决这个问题


共 (2) 个答案

  1. # 1 楼答案

    指定-source 1.7-target 1.7,哪个最适合您。如果它不是1.7编译器,则在编译开始之前,这两个编译器中的任何一个都会失败

  2. # 2 楼答案

    但是我发现我可以通过修改我的。上面的bash_概要文件从导出路径=$PATH:$JAVA_HOME/bin到导出路径=$JAVA_HOME/bin:$PATH,解决了这个问题