过去,Java主要发行版通常倾向于加载影响深远的功能,这些功能会对您可以并且应该编写的代码产生巨大影响,例如泛型(Java 5),功能结构(Java 8)和模块(Java)。 9)。这样的发布花费了很长时间,并且由于各种原因经常导致延迟。
大概从中吸取了教训,Oracle决定对Java的开发风格进行大修,使其更具增量性或“敏捷性”(如果您愿意)。他们希望发布具有较少新功能的主要版本,而不是每隔六个月以固定的发布时间表发布有时会花费很多年才能完成的主要版本。
Java 10是此新发行模式下的第一个版本,Java 9已随Java 10的发布而弃用。Java11是2018年9月发行的长期支持(LTS)版本,支持到2026年(来源) 。这非常类似于许多Ubuntu版本的使用习惯(顺便说一句,他们甚至计划用涉及发行年份和月份的内容替换版本号,类似于Canonical对Ubuntu所做的事情,但由于某种原因放弃了这个想法)。
现在,使用非LTS版本的Java意味着承诺每6个月更新一次使用JDK的软件。它不应该像过去将代码从一个主要Java版本迁移到另一个主要版本那样复杂,因为如前所述,语言更改应该以一种增量方式进行,但这绝对是要考虑的事情。如果您不想做出此承诺,则应该坚持使用LTS版本,这意味着坚持使用Java 8或Java 11。
对于新的“未开发项目”,到目前为止,Java 11可能是最佳选择。但是,如果要使用的工具链尚未完全支持Java 11,则可能必须坚持使用Java 8。
我希望这将有所帮助。
| 归档时间: |
|
| 查看次数: |
154 次 |
| 最近记录: |