2.8. OpenJDK 11 から非推奨化および削除された機能
Red Hat build of OpenJDK 8 でサポートされている一部の機能は、Red Hat build of OpenJDK 11 では非推奨になったか、削除されました。
- COBRA
Red Hat build of OpenJDK 11 は次のツールをサポートしていません。
-
Idlj
-
orbd
-
servertool
-
tnamesrv
-
- ロギングフレームワーク
Red Hat build of OpenJDK 11 は次の API をサポートしていません。
-
java.util.logging.LogManager.addPropertyChangeListener
-
java.util.logging.LogManager.removePropertyChangeListener
-
java.util.jar.Pack200.Packer.addPropertyChangeListener
-
java.util.jar.Pack200.Packer.removePropertyChangeListener
-
java.util.jar.Pack200.Unpacker.addPropertyChangeListener
-
java.util.jar.Pack200.Unpacker.removePropertyChangeListener
-
- Java EE モジュール
Red Hat build of OpenJDK 11 は次の API をサポートしていません。
-
java.activation
-
java.corba
-
java.se.ee (aggregator)
-
java.transaction
-
java.xml.bind
-
java.xml.ws
-
java.xml.ws.annotation
-
外部依存関係は、前述の API の一部を提供する可能性があるため、依存関係によって提供された場合は、これらの API の使用を検討してください。
- java.awt.peer
Red Hat build of OpenJDK 11 では、
java.awt.peer
パッケージが内部として設定されます。これは、アプリケーションがデフォルトでパッケージに自動的にアクセスできないことを意味します。この変更により、Red Hat build of OpenJDK 11 は、Component.getPeer
メソッドなどのピア API を参照するクラスとメソッドを削除しました。ユースケースの例は、ピア API を使用して次の基準をチェックすることです。
- コンポーネントを表示できる。
- コンポーネントは軽量コンポーネントである。
- コンポーネントは、OS ネイティブ UI コンポーネントによってサポートされている。
このコードは、Component.isDisplayable()
と Component.isLightweight()
を呼び出して更新することで、同じタスクを実行できます。
- javax.security と java.lang API
Red Hat build of OpenJDK 11 は次の API をサポートしていません。
-
javax.security.auth.Policy
-
java.lang.Runtime.runFinalizersOnExit(boolean)
-
java.lang.SecurityManager.checkAwtEventQueueAccess()
-
java.lang.SecurityManager.checkMemberAccess(java.lang.Class,int)
-
java.lang.SecurityManager.checkSystemClipboardAccess()
-
java.lang.SecurityManager.checkTopLevelWindow(java.lang.Object)
-
java.lang.System.runFinalizersOnExit(boolean)
-
java.lang.Thread.destroy()
-
java.lang.Thread.stop(java.lang.Throwable)
-
- Sun.misc
sun.misc package
は内部にあり、サポートされていません。Red Hat build of OpenJDK 11 では、次のパッケージが非推奨化または削除されました。-
sun.misc.BASE64Encoder
-
sun.misc.BASE64Decoder
sun.reflect.Reflection
Red Hat build of OpenJDK 11 では、いくつかのメソッドが
sun.misc.Unsafe
パッケージから削除されました。注記可能な限り、
sun.misc package
コンポーネントの代わりにパブリック API を使用してください。たとえば、sun.misc.Unsafe
パッケージの代わりにVarHandles
パッケージを使用するか、sun.reflect.Reflection
API の代わりにStackWalker
API を使用します。Red Hat build of OpenJDK 11 では、アプリケーションによる
sun.misc
パッケージ内のクラスの使用が制限されています。この問題の回避策の詳細については、Java library classes を参照してください。
-
関連情報
- Red Hat build of OpenJDK 8 の機能の詳細は、JDK 8 Features を参照してください。
- Red Hat build of OpenJDK 11 の機能の詳細は、JDK 11 を参照してください。
- 使用可能なすべての JEP のリストの詳細については、JEP 0: JEP Index を参照してください。
- 削除された Java EE モジュールと COBRA モジュール、およびこれらのモジュールの代替の可能性に関する詳細は、JEP 320: Remove the Java EE and CORBA Modules を参照してください。