Windows XPにjdk8 b132をインストールしてみた
Java SE 8はサポートプラットフォームからWindows XPを除外しているので動作保証はされていません。
が、Windows XPにJava SE 8を入れて動かしている例がありました。
現在保有しているノートPC(Windows XP)が古く今更新しいOSを入れるのも厳しいため、JDK8がどこまで動くのか(動かないのか)を試すのも含めてインストールにチャレンジしてみました。
まず、jdk8 b132のWindows 32bit版をダウンロードします。
これを実行すると、「プロシージャエントリポイント RegDeleteKeyExA がダイナミックリンクライブラリADVAPI32.dllから見つかりませんでした。」とエラーになります。おや、「Windows XPはサポートされません」的なエラーメッセージではなくいきなりWindows Vista以降で追加された関数の呼び出しでエラーです。
しかし、これはインストーラの問題なので、インストーラを使わず手作業でインストールをします。
7zipツールでjdk-8-fcs-bin-b132-windows-i586-04_mar_2014.exeを解凍します。すると、tools.zipというファイル1つが取り出せます。これを、7zipでもう1回解凍します。解凍先は、D:\java\jdk1.8.0などJAVA_HOMEにしたいディレクトリを作りそこを指定します。
D:\java\jdk1.8.0 +-- bin +-- db +-- include +-- jre +-- lib +-- javafx-src.zip +-- LICENSE +-- README.html +-- release +-- THIRDPARTYLICENSEREADME.txt +-- THIRDPARTYLICENSEREADME-JAVAFX.txt
とおなじみのディレクトリツリーができました。しかし、jreやlibディレクトリの中を見ると、
rt.jarやtools.jarがなく、代わりにrt.pack、tools.packなど拡張子がjarではなくpackとなったファイルが存在します。これはJDKに含まれるツールpack200で解凍すると本来のjarファイルになります。
コマンドプロンプトを起動し、次を実行します。
C:\> d: D:\> cd java\jdk1.8.0 D:\java\jdk1.8.0> FOR /R %f IN (*.pack) DO "D:\java\jdk1.8.0\bin\unpack200.exe" -r -v "%f" "%~pf%~nf.jar" Unpacking from D:\java\jdk1.8.0\jre\lib\charsets.pack to \java\jdk1.8.0\jre\lib\charsets.jar com.sun.java.util.jar.pack.unpack.log.file=- unpack.deflate.hint=(not set) : D:\java\jdk1.8.0>
javaコマンドを実行してみます。
D:\java\jdk1.8.0> bin\java -version java version "1.8.0" Java(TM) SE Runtime Environment (build 1.8.0-b132) Java HotSpot(TM) Client VM (build 25.0-b70, mixed mode) D:\java\jdk1.8.0>
いけているようです。
JavaFXのサンプルをダウンロードし、Ensembleデモを実行してみましたが、動いています。