首页 > 编程语言 > 详细

Java编译器002---javac -source/-target选项

时间:2020-04-02 16:54:50      阅读:48      评论:0      收藏:0      [点我收藏+]

源码:

public class TestSource {
    public static void main(String[] args) {
        List<String> stringList = Arrays.stream(new String[]{"hello", "hi", "how are you", "what?", "hi"})
            .distinct()
            .filter(word -> word.startsWith("h"))
            .sorted(Comparator.reverseOrder())
            .collect(Collectors.toList());
        System.out.println(stringList);
    }
}

-source:

用于指定编译源码时使用的JDK版本,例如:javac -source 1.7 TestSource.java 指定使用JDK1.4编译TestSource.java,

但是TestSource.java中使用了lamba表达式,因此编译报错,需要指定JDK版本为1.8;

 -target:

用于指定生成的字节码文件要运行在哪个JDK版本,如指定target版本为1.8,则运行字节码文件的JDK版本必须大于等于1.8

编译时同时使用:

运行使用的JDK版本必须大于等于编译使用的JDK版本,即-target指定的版本必须大于等于-source,否则编译会有如下错误:

javac: 源发行版 1.8 需要目标发行版 1.8

 

Java编译器002---javac -source/-target选项

原文:https://www.cnblogs.com/sniffs/p/12620636.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!