没有合适的资源?快使用搜索试试~ 我知道了~
JDK13-migration-guide.pdf
需积分: 5 0 下载量 33 浏览量
2023-08-08
07:31:17
上传
评论
收藏 300KB PDF 举报
温馨提示
试读
30页
JDK13-migration-guide
资源推荐
资源详情
资源评论
Java Platform, Standard Edition
Oracle JDK Migration Guide
Release 13
F18399-01
September 2019
Getting Started
The purpose of this guide is to help you identify potential issues and give you
suggestions on how to proceed as you migrate your existing Java application to the
JDK 13 release. The guide also highlights the significant changes and enhancements
done to the JDK 13 release.
This guide contains the following sections:
• Significant Changes in the JDK
• Preparing For Migration
• Migrating From JDK 8 to Later JDK Releases
• Next Steps
Note:
• Ensure that you check the Oracle JDK Certified System Configurations
for the latest supported platforms, browsers, and operating system
versions.
• See Removed APIs, Tools, and Components before you start the
migration process.
Significant Changes in the JDK
Before migrating your application to the latest JDK release, you must understand what
the updates and changes are between it and the previous JDK release. If you are
migrating from JDK 8, you should also be familiar with the differences between JDK 8
and later releases that are described in Migrating From JDK 8 to Later JDK Releases.
See the following sections to know some of the significant changes in latest JDK
releases.
1
Significant Changes in JDK 13 Release
The following are some of the important enhancements in Java SE 13 and JDK 13:
• Dynamic CDS Archiving extends application class-data sharing (ApsCDS), which
allows dynamic archiving of classes when the Java application exits. See JEP 350:
Dynamic CDS Archives.
• Text blocks have been added to Java language, which provide developers with
control over the format when desired. This is a preview language feature. See JEP
355 Text Blocks (Preview) and JEP 12: Preview Language and VM Features.
• The
switch
expression, a preview language feature, has been extended to be
used as either a statement or an expression, so that both forms can use either
traditional labels (with fall through) or new labels (with no fall through). It is used
with a further new statement for yielding a value from a
switch
expression. See
JEP 354: Switch Expressions (Preview) and JEP 12: Preview Language and VM
Features.
• The implementation used by
java.net.Socket
and
java.net.ServerSocket
APIs
is replaced with a simpler and more modern implementation that is easy to
maintain and debug. See JEP 353: Reimplement the Legacy Socket API.
• Support for Unicode 12.1. See Unicode 12.1.
• ZGC is enhanced to return unused heap memory to the operating system, which
enhances the memory footprint of the applications. See JEP 351 ZGC Uncommit
Unused Memory.
In addition, there are security related updates and a few removed tools and
components that you need to be aware of. See:
• Security Updates
• Removed APIs, Tools, and Components
Significant Changes in JDK 12 Release
The following are some of the important additions and updates in Java SE 12 and JDK
12:
• JVM Constants API is introduced to model nominal descriptions of key class-file
and run-time artifacts, in particular constants that are loadable from the constant
pool. See JVM Constant API.
• The
switch
statement is extended so that it can be used either as a statement or
an expression. This is a preview language feature. See JEP 325: Switch
Expressions (Preview) and JEP 12: Preview Language and VM Features.
• Support for Unicode 11.0. See Unicode 11.0.
• Square character support is provided for the Japanese Reiwa Era, which began on
May, 2019. See Square character support.
• The
NumberFormat
adds support for formatting a number in its compact form. See
Compact Number Formatting Support .
2
Significant Changes in JDK 11 Release
JDK 11 had some significant changes too. As JDK 11 is a long term support (LTS)
release, you should be familiar with the following important changes in JDK 11
release:
• Oracle no longer offers JRE and Server JRE downloads; consequently, Auto-
Update is not available anymore.
• Java Web Start, Java Plugin, and Java Control Panel are not available in JDK.
See Removal of the Deployment Stack.
• JavaFX is no longer included in the JDK. It is now available as a separate
download from https://openjfx.io/.
• JAXB and JAX-WS are no longer bundled with JDK. See Removal of Java EE and
CORBA Modules.
Removal of the Deployment Stack
Java deployment technologies were deprecated in JDK 9 and removed in JDK 11.
Java applet and Web Start functionality, including the Java plug-in, the Java Applet
Viewer, Java Control Panel, and Java Web Start, along with
javaws
tool, have been
removed in JDK 11.
See Remove Java Deployment Technologies.
Removal of Java EE and CORBA Modules
In JDK 11, the Java EE and CORBA modules were removed. These modules were
deprecated for removal in JDK 9.
The removed modules are:
• java.xml.ws: Java API for XML Web Services (JAX-WS), Web Services
Metadata for the Java Platform, and SOAP with Attachments for Java (SAAJ)
• java.xml.bind: Java Architecture for XML Binding (JAXB)
• java.xml.ws.annotation: The subset of the JSR-250 Common Annotations
defined by Java SE to support web services
• java.corba: CORBA
• java.transaction: The subset of the Java Transaction API defined by Java SE
to support CORBA Object Transaction Services
• java.activation: JavaBeans Activation Framework
• java.se.ee: Aggregator module for the six modules above
• jdk.xml.ws: Tools for JAX-WS
• jdk.xml.bind: Tools for JAXB
3
Existing code with references to classes in these APIs will not compile without
changes to the build. Similarly, code on the class path with references to classes in
these APIs will fail with
NoDefClassFoundError
or
ClassNotFoundException
unless
changes are made in how the application is deployed.
See JEP 320: Remove the Java EE and CORBA Modules to get more information
about possible replacements for the modules.
Note:
You can download JAXB and JAX-WS from Maven.
Security Updates
This section provides details on the security updates done in JDK releases.
Security Updates in JDK 13
The following have been removed from JDK 13:
• Experimental FIPS 140 compliant mode from SunJSSE provider
• Duplicated RSA services no longer supported by SunJSSE provider
Removal of Security Cerificates
The following root certificates have been removed from keystore in JDK 13:
• T-Systems Deutsche Telekom Root CA 2 certificate
• Two DocuSign Root CA certificates
• Two Comodo Root CA certificates
Security Updates in JDK 12 and JDK 11
The JDK 11 release includes an implementation of the Transport Layer Security (TLS)
1.3 specification (RFC 8446).
TLS 1.3 is the latest iteration (August 2018) of the Transport Layer Security (TLS)
protocol and is enabled by default in JDK 11. This version focuses not only on speed
improvements, but also updates the overall security of the protocol by emphasizing
modern cryptography practices, and disallows outdated or weak crypto algorithms.
(For example, RSA key exchange and plain DSA signatures are no longer allowed.)
Several features were added to the TLS 1.3 protocol to improve backwards
compatibility, but there are several issues of which you need to be aware of. For
details, see JEP 332.
Removal of Security Certificates
4
The following root certificate has been removed from the keystore in JDK 12:
• Removal of GTE CyberTrust Global Root
The following root certificates have been removed from the truststore in JDK 11:
• Several Symantec Root CAs
• Baltimore Cybertrust Code Signing CA
• SECOM Root Certificate
• AOL and Swisscom root certificates
Products that use certificates that have been removed may no longer work. If these
certificates are required, then you must configure and populate the cacerts with the
missing certs. To add certs to the truststore, see keytool in Java Development Kit Tool
Specifications guide.
Removed APIs, Tools, and Components
This section provides details about Java SE APIs, tools, and components that were
removed in JDK 13, JDK 12, and JDK 11 releases.
Run
jdeprscan --release 13 -l --for-removal
to get the list of APIs that are
marked for removal in JDK 13.
Note:
The jdeprscan tool is available since JDK 9. If you want to print the list of
APIs for a different JDK version, then replace the release number with 9 or
later.
Removed APIs in Java SE 13
The following APIs were removed in Java SE 13. Both of these APIs were deprecated
and marked for removal with JDK 9. Both have been superseded by JVM-specific
tracing mechanisms. See JVMTM Tool Interface specification.
java.lang.Runtime.traceInstructions(boolean)
java.lang.Runtime.traceMethodCalls(boolean)
APIs Removed in Java SE 12
The following APIs were removed in Java SE 12.
java.io.FileInputStream.finalize()
java.io.FileOutputStream.finalize()
java.util.zip.Deflater.finalize()
5
剩余29页未读,继续阅读
资源评论
weixin_40191861_zj
- 粉丝: 63
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- cc test for cc
- 蚁群算法基于matlab实现,有源代码,和详细的说明文件,matlab仿真的数据及参数输入的值都一给定好
- 20231201HlBwnVr1.zip
- 基于py+matlab MATLAB实时数字图像相关软件用于监测在康奈尔高能同步加速器上进行的原位机械加载高能x射线衍射
- 基于matlab实现字符识别的参考程序,用所用的字体识别率挺高,部分手写的也能识别,但是还不能识别扭曲和倾斜的字符 .rar
- 基于matlab实现指纹识别系统 包括数据库导入、图像选择识别、帮助功能、识别图像可视、gabor滤波可视,实现界面操作.rar
- 基于matlab实现指纹识别,利用gabor滤波器,提取指纹特征,只能呢读取bmp图像.rar
- 基于matlab实现于数字图像相关方法中散斑质量评价
- 基于matlab实现遗传算法和佳点集遗传算法的基本思想和不同点,用遗传算法测试一标准函数 佳点集算法测试一标准函数
- tensorflow-gpu-2.5.1-cp38-cp38-manylinux2010-x86-64.whl
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功