当前位置: 首页 > 知识库问答 >
问题:

Java11:javac--release和-source和-target命令行参数之间有什么区别?[副本]

凌长恨
2023-03-14

有人知道使用--release和旧的-source和-target命令行参数之间的区别吗?

在javac手册页中:-source提供与指定版本的源代码兼容性-target为特定VM版本生成类文件

共有1个答案

幸弘扬
2023-03-14

--release标志不仅设置源版本和目标版本,还会导致编译器使用与指定版本对应的JDK库的符号表,防止您意外地使用编译JDK中存在但指定版本中不存在的API。--release标志是后来添加的,在大多数情况下,应该替换--source--target的用法。

 类似资料:
  • 问题内容: 使用Java编译器()时,我们可以指定两种兼容性。一个正在使用,另一个正在使用。两者有什么区别? 例如和? 另外,在任何情况下我们使用不同的源和目标兼容性级别吗? 问题答案: 从javac文档: -source 指定接受的源代码版本。 -target 生成针对指定版本的VM的类文件。类文件将在指定的目标和更高版本上运行,但不会在VM的早期版本上运行。 在您的示例中: 这将用于确保源代码

  • 我刚刚安装了Phonegap的第一个time.confuses我的事实是,一些文档正在使用命令“phonegap”和一些“cordova”是电话间隙和cordovan命令之间的区别?我需要使用哪个命令来创建phonegap应用程序?请任何人都可以帮助我?

  • 我发现了一个结果 alpha命令和beta命令有什么区别?

  • matplotlib之间的区别是什么。pyplot和matplotlib。派拉布? 哪一个是首选的什么用途? 我有点困惑,因为它似乎是独立的,我可以做同样的事情。我错过了什么?

  • 问题内容: 在此示例中: 无法编译为: 而被编译器接受。 这个答案说明唯一的区别是,与不同,它允许您稍后引用类型,似乎并非如此。 是什么区别,并在这种情况下,为什么不第一编译? 问题答案: 通过使用以下签名定义方法: 并像这样调用它: 在jls§8.1.2中,我们发现(有趣的部分被我加粗了): 通用类声明定义了一组参数化类型(第4.5节), 每种可能通过类型arguments调用类型参数节的类型

  • 据我所知,两者都定义大小。没有?建议使用什么:或?如果我两个都用,哪一个比另一个好?