教你怎么从Java8升级到Java11( 二 )

  • Removal of SNMP Agent
  • Remove the Java EE and CORBA Modules
  • Removal of JavaFX from the Oracle JDK
  • Removal of JMC from the Oracle JDK
  • Removal of Java Deployment Technologies
  • 更多请查看官网
  • 升级建议(重要)从Java 11后Oracle不再单独发布JRE和Server JRE了,并统一JDK名称为:Oracle JDK  。
    另外Java 11及之后的版本,将不会再发布对32位操作系统支持的版本 。
    教你怎么从Java8升级到Java11

    文章插图
     
    新旧项目不同策略
    新启的Java项目建议直接从Oracle JDK 11开始搭建,千万不要犹豫,因为技术都是越新越强的 。Java8就像晚期的大众,而Java11却是新兴的特斯拉 。
    历史的项目如果只是维护的话,干脆就放着运行不要动好了,等哪天决定重构了再考虑升级到Java11 。因为最大的问题不是自己公司开发的Code不能迁移到高版本,而是项目中引入的第三方Jar,这个东西搞起来十分头疼 。
    JDK升级分析工具
    升级最担心的就是被删除的模块!
    推荐IBM公司Liberty团队提供了一个十分好用的检测Toolkit程序,可以扫描应用程序二进制文件(.war),发现的任何潜在的Java 11问题并生成html报告 。绝对的大利器,详细内容直接查看IBM官方介绍:Scanner Kit 。
    直接运行java -jar binaryAppScannerInstaller.jar,按步骤安装有个lisence声明和目录指定,默认目录名wamt 。
    教你怎么从Java8升级到Java11

    文章插图
     
    参考文档中会有使用详细介绍,也可以参考下面测试例子(扫描很慢,要些耐心等):
    java -jar binaryAppScanner.jar Root.war --analyzeJavaSE --sourceJava=oracle8 --targetJava=java11 --output=./java11/RootReport.html
    查看帮助命令:
    java -jar binaryAppScanner.jar Root.war --help --all
    教你怎么从Java8升级到Java11

    文章插图
     
    报告结果如下:
    教你怎么从Java8升级到Java11

    文章插图
     

    教你怎么从Java8升级到Java11

    文章插图
     

    教你怎么从Java8升级到Java11

    文章插图
     

    教你怎么从Java8升级到Java11

    文章插图
     

    教你怎么从Java8升级到Java11

    文章插图
     
    JDK不同于OpenJDK
    推荐Oracle JDK,因为更加稳定可靠 。
    • 只有Oracle JDK支持Solaris系统;
    • 只有Oracle JDK才支持msi这样的安装程序;
    • Oracle JDK版本将每三年发布一次,而OpenJDK版本每三个月发布一次;
    • OpenJDK 是一个参考模型并且是完全开源的,而Oracle JDK是 OpenJDK的一个实现,并不是完全开源的;
    • Oracle JDK 比 OpenJDK 更稳定 。OpenJDK和Oracle JDK的代码几乎相同,但建议您选择Oracle JDK,因为它经过了彻底的测试和稳定修复;
    • 在响应性和JVM性能方面,Oracle JDK与OpenJDK相比提供了更好的性能;
    • Oracle JDK不会为即将发布的版本提供长期支持,用户每次都必须通过更新到最新版本获得支持来获取最新版本;
    • Oracle JDK根据二进制代码许可协议获得许可,而OpenJDK根据GPL v2许可获得许可 。Oracle公司很善于打官司,所以这点很重要 。

    教你怎么从Java8升级到Java11

    文章插图
     




    推荐阅读