5 削除されたツールとコンポーネント
次の項では、実験的、廃止、または不使用となり、JDKから削除されたツールやコンポーネントを示します。
JDK 18で削除および非推奨となったツールとコンポーネント
削除のためのファイナライズの非推奨化
ファイナライズ・メカニズムは、将来のリリースでの削除のために非推奨になりました。Object.finalize()
やEnum.finalize()
などの標準Java APIのfinalize
メソッドも、Runtime.runFinalization()
やSystem.runFinalization()
などのファイナライズに関連するメソッドとともに、将来のリリースでの削除のために非推奨になりました。
ファイナライズは現在、デフォルトで有効なままですが、早期テストを促進するために無効にできます。将来のリリースでは、デフォルトで無効になり、後のリリースで削除されます。JEP 421: 削除のためのファイナライズの非推奨化に関する項および「削除のために非推奨となったファイナライズ」を参照してください。
JDK 17で削除および非推奨となったツールとコンポーネント
削除のためのアプレットAPIの非推奨化
すべてのWebブラウザ・ベンダーがJavaブラウザ・プラグインのサポートを削除したか、そうする予定を発表したため、アプレットAPIは削除のために非推奨となりました。JEP 398: 削除のためのアプレットAPIの非推奨化に関する項を参照してください。
RMIアクティブ化の削除
リモート・メソッド呼出し(RMI)アクティブ化メカニズムは削除されました。ただし、それ以外のRMIの機能は保持されます。JEP 407: RMIアクティブ化の削除に関する項を参照してください。
JDK 16で削除および非推奨となったツールとコンポーネント
試験的な機能AOTおよびGraal JITの削除
Java Ahead-of-Timeコンパイル試験ツールjaotc
およびJavaベースのGraal JITコンパイラは削除されました。試験的な機能AOTおよびGraal JITの削除に関する項を参照してください。
1024ビット・キーのルート証明書の削除
弱い1024ビットRSA公開キーを持つルート証明書がcacerts
キーストアから削除されました。詳細は、1024ビット・キーのルート証明書の削除に関する項を参照してください。
レガシー楕円曲線の削除
SunECプロバイダでは、JDK 14で非推奨となった次の楕円曲線はサポートされなくなりました。
secp112r1, secp112r2, secp128r1, secp128r2, secp160k1, secp160r1, secp160r2,
secp192k1, secp192r1, secp224k1, secp224r1, secp256k1, sect1
これらの曲線を引き続き使用するには、サードパーティの代替曲線を検索します。レガシー楕円曲線に関する項を参照してください。
非推奨になったトレース・フラグの廃止および同等の統合ロギング機能への置換え
Java 9で統合ロギングが追加されたときに、いくつかのトレース・フラグが非推奨になり、統合ロギングと同等のものにマップされました。これらのフラグは廃止されたため、これらのフラグの使用を同等の統合ロギングに明示的に置き換える必要があります。
廃止トレース・フラグ | 統合ロギングへの置換 |
---|---|
-XX:+TraceClassLoading |
-Xlog:class+load=info |
-XX:+TraceClassUnloading |
-Xlog:class+unload=info |
-XX:+TraceExceptions |
-Xlog:exceptions=info |
JDK 15で削除および非推奨となったツールとコンポーネント
Nashorn JavaScriptエンジンの削除
Nashorn JavaScriptスクリプト・エンジンとAPI、およびjjs
ツールは、JDK 15で削除されました。エンジン、APIおよびツールは、Java 11での削除のために非推奨になりました。『JEP 372: Remove the Nashorn JavaScript Engine』を参照してください。
RMI静的スタブ・コンパイラ(rmic)ツールの削除
RMI静的スタブ・コンパイラ(rmic)ツールは削除されました。rmicツールは、JDK 13での削除のために非推奨になりました。サポートされているツールのセットからのrmicの削除を参照してください。
バイアス・ロックの無効化および非推奨
バイアス・ロックはデフォルトで無効になっており、関連するすべてのコマンドライン・オプションは非推奨になりました。『JEP 374: Disable and Deprecate Biased Locking』を参照してください。
削除のためのRMIアクティブ化の非推奨化
RMIアクティブ化メカニズムは非推奨になりました。プラットフォームの将来のバージョンで削除される可能性があります。『JEP 385: Deprecate RMI Activation for Removal』を参照してください。
JDK 14で削除された機能とコンポーネント
Concurrent Mark Sweep (CMS)ガベージ・コレクタの削除
CMSガベージ・コレクタが削除されました。『JEP 363: Remove the Concurrent Mark Sweep (CMS) Garbage Collector』を参照してください。
Pack200ツールとAPIの削除
Pack200ツールおよびAPIはJDK 11で非推奨となり、JDK 14で削除されました。
pack200
およびunpack200
ツール、およびjava.util.jar.Pack200
パッケージのPack200
が削除されました。
JDK 13で削除されたツールとコンポーネント
javadoc
ツールからの旧機能の削除
Javadocツールから次の4つの機能が削除されました:
- HTML 4を使用したAPIドキュメントの生成のサポート
- 古いjavadoc APIのサポート
- HTMLフレームを使用したドキュメントの生成のサポート
--no-module-directories
オプションのサポート
削除されたjavadoc
機能の詳細は、JDK-8215608: 古いjavadoc機能の削除を参照してください。
JDK 11で削除されたツールとコンポーネント
デプロイメント・スタックの削除
Javaデプロイメント・テクノロジはJDK 9で非推奨になり、JDK 11で削除されました。
JavaアプレットおよびWeb Start機能(Javaプラグイン、Javaアプレット・ビューア、Javaコントロール・パネル、Java Web Startなど)は、javaws
ツールとともにJDK 11で削除されました。
Javaデプロイメント・テクノロジの削除に関する項を参照してください。
Java EEおよびCORBAモジュールの削除
JDK 11では、Java EEおよびCORBAモジュールが削除されました。これらのモジュールはJDK 9で削除予定の非推奨となりました。
削除されたモジュールは次のとおりです:
- java.xml.ws: Java API for XML Web Services (JAX-WS)、Web Services Metadata for the Java PlatformおよびSOAP with Attachments for Java (SAAJ)
- java.xml.bind: Java Architecture for XML Binding (JAXB)
- java.xml.ws.annotation: Webサービスをサポートするための、Java SEによって定義されているJSR-250 Common Annotationsのサブセット
- java.corba: CORBA
- java.transaction: CORBA Object Transaction Servicesをサポートするための、Java SEによって定義されているJava Transaction APIのサブセット
- java.activation: JavaBeans Activation Framework
- java.se.ee: 前述の6つのモジュール用のアグリゲータ・モジュール
- jdk.xml.ws: JAX-WS用のツール
- jdk.xml.bind: JAXB用のツール
これらのAPIのクラスへの参照を含む既存のコードは、ビルドを変更しなければコンパイルされません。同様に、これらのAPIのクラスへの参照があるクラス・パスのコードは、アプリケーションのデプロイ方法に変更を加えないかぎり、NoDefClassFoundError
またはClassNotFoundException
により失敗します。
使用可能な代替モジュールの詳細は、『JEP 320: Remove the Java EE and CORBA Modules』を参照してください。
ノート:
JAXBおよびJAX-WSはMavenからダウンロードできます。ツールとコンポーネントの削除
主要ツール
appletviewer
JDK-8200146 : appletviewer起動ツールの削除を参照してください。
CORBAツール
idlj
orbd
servertool
tnamesrv
また、rmic
(RMIコンパイラ)で-idl
や-iiop
オプションがサポートされなくなりました。JDK 11リリース・ノートを参照してください。
Java Web Servicesツール
schemagen
wsgen
wsimport
xjc
Javaデプロイメント・ツール
javapackager
javaws
JDKからのJavaFXの削除に関する項を参照してください。
モニタリング・ツール
jmc
: JMCは、JDK 11でスタンドアロン・パッケージとして提供され、JDKにバンドルされていません。
JDKからのJMCの削除に関する項および『Java Mission Control』を参照してください。
JVM-MANAGEMENT-MIB.mib
SNMP JVM-MANAGEMENT-MIB.mib
を使用したJVMモニタリングおよび管理の仕様は削除されました。JVM-MANAGEMENT-MIB.mibの削除を参照してください。
SNMPエージェント
jdk.snmp
モジュールは削除されました。SNMPエージェントの削除を参照してください。
Oracleデスクトップ固有の削除
- Oracle JDK T2Kフォント・ラスタライザは削除されました。
- Lucidaフォント: Oracle JDK付属のフォントがなくなり、オペレーティング・システムにインストールされているフォントに完全に依存するようになりました。Oracle JDKからのLucidaフォントの削除に関する項を参照してください。
JDK 9およびJDK 10で削除されたツールとコンポーネント
このリストには、JDKにバンドルされなくなったツールおよびコンポーネントが示されています。
削除されたネイティブ・ヘッダー生成ツール(javah)
javah
ツールは、javac
でより優れた機能によって置き換えられています。JDK 10では削除されました。
JDK 8以降、javac
は、Javaソース・コードがコンパイルされた時点でネイティブ・ヘッダー・ファイルを記述する機能を提供します。これによって、別のツールは必要ありません。
javah
のかわりに次を使用します javac -h
JavaDBの削除
JavaDB (旧称Apache Derby)は、JDKには含まれなくなりました。
JavaDBはJDK 7およびJDK 8にバンドルされていました。これはJDKインストール・ディレクトリのdb
ディレクトリにありました。
Apache DerbyはApache Derbyのダウンロードからダウンロードおよびインストールできます。
JVM TI hprofエージェントの削除
hprof
エージェント・ライブラリは削除されました。
hprof
エージェントはJVM Tool Interfaceのデモンストレーション・コードとして記述されたもので、本番ツールとすることを意図したものではありません。hprof
エージェントの役立つ機能はより優れた代替品により置き換えられました。その一部はJDKに含まれています。
hprof
形式のヒープ・ダンプを作成するには、診断コマンド(jcmd
)またはjmap
ツールを使用します。
CPUプロファイラ機能については、JDKにバンドルされているJava Flight Recorderを使用してください。
『JEP 240: Remove the JVM TI hprof Agent』を参照してください。
java-rmi.exeおよびjava-rmi.cgi起動ツールの削除
Windowsの起動ツールjava-rmi.exe
およびLinuxとSolarisの起動ツールjava-rmi.cgi
が削除されています。
java-rmi.cgi
はLinuxの$JAVA_HOME/bin
にありました。
java-rmi.exe
はWindowsの$JAVA_HOME/bin
にありました。
これらの起動ツールは、RMI CGIプロキシ・メカニズムの使用を促進するためにJDKに追加されていましたが、JDK 8で非推奨となっていました。
HTTPによるプロキシRMIのかわりにサーブレットの使用が長年にわたって可能であるとともに薦められてきました。Java RMIとオブジェクトのシリアライズに関する項を参照してください。
JMX RMIConnectorからのIIOPトランスポートのサポートの削除
JMX RMIコネクタからのIIOPトランスポートのサポートが、そのサポート・クラスとともにJDKから削除されました。
JDK 8では、IIOPトランスポートのサポートが必須からオプションにダウングレードされました。これは、JMX Remote APIからIIOPトランスポートのサポートを削除するための複数リリースにわたる取組みの最初のステップでした。JDK 9では、IIOPのサポートが完全に削除されました。
パブリックAPIの変更には次が含まれます。
-
javax.management.remote.rmi.RMIIIOPServerImpl
クラスは非推奨になりました。呼び出すと、そのすべてのメソッドおよびコンストラクタは、説明のメッセージとともにjava.lang.UnsupportedOperationException
をスローします。 -
2つのクラス
org.omg.stub.javax.management.rmi._RMIConnection_Stub
およびorg.omg.stub.javax.management.rmi._RMIConnection_Tie
は生成されません。
Windows 32ビット・クライアントVMの削除
Windows 32ビット・クライアントVMは使用できなくなりました。サーバーVMのみが提供されます。
JDK 8以前のリリースでは、Windows 32ビット・システム用にクライアントJVMとサーバーJVMの両方が提供されていました。JDK 9以降のリリースでは、ピーク・オペレーティング速度を最大化するためにチューニングされているサーバーJVMのみが提供されます。
Java VisualVMの削除
Java VisualVMは、Java仮想マシン上で実行されているコードについての情報を提供するツールです。jvisualvm
ツールはJDK 6、JDK 7およびJDK 8で提供されていました。
Java VisualVMはJDKとバンドルされなくなりましたが、VisualVMオープン・ソース・プロジェクト・サイトから入手できます。
native2asciiツールの削除
native2ascii
ツールはJDKから削除されました。JDK 9以降のリリースではUTF-8ベースのプロパティ・リソース・バンドルがサポートされているため、UTF-8ベースのプロパティ・リソース・バンドルのISO-8859-1への変換ツールは必要なくなりました。
『Java Platform, Standard Edition国際化ガイド』のUTF-8プロパティ・ファイルに関する項を参照してください。