トップ «前の日記(2013-02-13) 最新 次の日記(2013-04-29)» 編集

呑んだくれ改めレッツゴー痛風日記


2013-04-17

_ LionにJDK1.5をインストールする。

MacOSX LionにJDK1.5をインストールするのが何かと面倒だったのでメモ。 LionのJavaVMのバージョンは1.6なのだが、過去プロジェクトのメンテナンスのために1.5が必要になった。
/System/Library/Frameworks/JavaVM.framework/Versionsの下を見るといろんなバージョンのJavaVMが入っていそうにみえたのだが、よくみると全て1.6へのシンボリックリンクになっていたので、Webで調べてたどりついたページ(http://www.s-seven.net/java_15_mountain_lion)を参考にしながら1.5を改めてインストールした。 事前準備:
  • Pacifistというシェアソフトをインストールして、20ドル払ってレジストレーションしておく。
  • ここからOSX 10.5向けのJavaのインストールイメージをダウンロードして展開しておく

  • 1.システムディレクトリの下を操作するのでrootになっておく。
    kinokuni-no-MacBook-Air:~ kinokuni$ sudo -s
    bash-3.2# 
    2./System/Library/Frameworks/JavaVM.framework/Versionsに移動して既存のJava1.5のシンボリックリンクを削除する。
    cd /System/Library/Frameworks/JavaVM.framework/Versions
    bash-3.2# cd /System/Library/Frameworks/JavaVM.framework/Versions
    bash-3.2# ls -la
    total 64
    drwxr-xr-x  11 root  wheel  374  3 18 10:20 .
    drwxr-xr-x  11 root  wheel  374  3 18 10:20 ..
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.4 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.4.2 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.5 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.5.0 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.6 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.6.0 -> CurrentJDK
    drwxr-xr-x   8 root  wheel  272  3 18 10:20 A
    lrwxr-xr-x   1 root  wheel    1  3 18 10:20 Current -> A
    lrwxr-xr-x   1 root  wheel   59  3 18 10:20 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
     
    bash-3.2# rm -i 1.5
    remove 1.5? yes
    bash-3.2# rm -i 1.5.0
    remove 1.5.0? yes
     
    bash-3.2# ls -la
    total 48
    drwxr-xr-x  10 root  wheel  340  4 15 15:44 .
    drwxr-xr-x  11 root  wheel  374  3 18 10:20 ..
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.4 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.4.2 -> CurrentJDK
    drwxr-xr-x   7 root  wheel  238  6 22  2011 1.5.0
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.6 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.6.0 -> CurrentJDK
    drwxr-xr-x   8 root  wheel  272  3 18 10:20 A
    lrwxr-xr-x   1 root  wheel    1  3 18 10:20 Current -> A
    lrwxr-xr-x   1 root  wheel   59  3 18 10:20 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
    
    3.PacifistからJava1.5のみをシステムにインストールする

    Pacifistの初期画面
    Pacifistをたちあげて、OpenPackageから、ダウンロードして展開していたJavaForMacOSX10.5Update10.pkgを開く。
    すると、図のように中身を確認することができるので、1.5.0のフォルダを選択して右クリックからInstall to Default Locationを選択して実行する。

    Pacifistでパッケージを展開した結果

    インストールした結果、/System/Library/Frameworks/JavaVM.framework/Versionsの下に1.5.0というディレクトリが作成されていればOK。

    4.1.5.0ディレクトリを1.5.0_30にリネームする
    bash-3.2# mv -v 1.5.0 1.5.0_30
    1.5.0 -> 1.5.0_30
    bash-3.2# ls -la
    total 48
    drwxr-xr-x  10 root  wheel  340  4 15 15:47 .
    drwxr-xr-x  11 root  wheel  374  3 18 10:20 ..
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.4 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.4.2 -> CurrentJDK
    drwxr-xr-x   7 root  wheel  238  6 22  2011 1.5.0_30
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.6 -> CurrentJDK
    lrwxr-xr-x   1 root  wheel   10  3 18 10:20 1.6.0 -> CurrentJDK
    drwxr-xr-x   8 root  wheel  272  3 18 10:20 A
    lrwxr-xr-x   1 root  wheel    1  3 18 10:20 Current -> A
    lrwxr-xr-x   1 root  wheel   59  3 18 10:20 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
    
    5.1.5.0_30を指す1.5および1.5.0というシンボリックリンクを作成する。
    bash-3.2# ln -sivh ./1.5.0_30 1.5
    1.5 -> ./1.5.0_30
    bash-3.2# ln -sivh ./1.5.0_30 1.5.0
    1.5.0 -> ./1.5.0_30
    bash-3.2# ls -Fld 1.5*
    lrwxr-xr-x  1 root  wheel   10  4 15 15:48 1.5@ -> ./1.5.0_30
    lrwxr-xr-x  1 root  wheel   10  4 15 15:48 1.5.0@ -> ./1.5.0_30
    drwxr-xr-x  7 root  wheel  238  6 22  2011 1.5.0_30/
    
    6.Resources/Info.plistの編集
    bash-3.2# cd 1.5.0_30/
    bash-3.2# vi ./Resources/Info.plist 
     
    JVMMaximumFrameworkVersionの値の変更
    変更前
                    <key>JVMMaximumFrameworkVersion</key>
                    <string>12.*.*</string>
    変更後
                    <key>JVMMaximumFrameworkVersion</key>
                    <string>*.*.*</string>
     
    JVMMaximumSystemVersionの値の変更
    変更前:
                    <key>JVMMaximumSystemVersion</key>
                    <string>10.5.*</string>
    変更後:
                    <key>JVMMaximumSystemVersion</key>
                    <string>10.*.*</string>
     
    dict要素以下に下記を追記
    <plist version="1.0">
    <dict>
            <key>CFBundleExecutable</key> <--追加
            <string>libjava.jnilib</string>   <--追加
            <key>CFBundleDevelopmentRegion</key>
            <string>English</string>
    
    7.編集したinfolistのシンボリックリンクを作成
    bash-3.2# pwd
    /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0_30
    bash-3.2# ls ./info.plist
    ls: ./info.plist: No such file or directory
    bash-3.2# ln -siv ./Resources/Info.plist .
    ./Info.plist -> ./Resources/Info.plist
    bash-3.2# ls -Fl Info.plist
    lrwxr-xr-x  1 root  wheel  22  4 15 15:54 Info.plist@ -> ./Resources/Info.plist
    
    8.1.5.0_30ディレクトリ以下にMacOSディレクトリを作成してlibjava.jnilibへのシンボリックリンクを作成
    bash-3.2# pwd
    /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0_30
    bash-3.2# mkdir -v ./MacOS
    mkdir: created directory './MacOS'
    bash-3.2# cd ./MacOS/
    bash-3.2# ln -siv ../Libraries/libjava.jnilib .
    ./libjava.jnilib -> ../Libraries/libjava.jnilib
    bash-3.2# ls -Fl 
    total 8
    lrwxr-xr-x  1 root  wheel  27  4 15 15:58 libjava.jnilib@ -> ../Libraries/libjava.jnilib
    
    9./System/Library/java/JavaVirtualMachinesに1.5.0ディレクトリを作成して、先ほどまで構築した1.5.0_30ディレクトリへのリンクを作成する。
    bash-3.2# cd /System/Library/Java/JavaVirtualMachines
    bash-3.2# pwd
    /System/Library/Java/JavaVirtualMachines
    bash-3.2# ls -la
    total 0
    drwxr-xr-x  3 root  wheel  102 11  2  2011 .
    drwxr-xr-x  6 root  wheel  204  1 26  2012 ..
    drwxr-xr-x  3 root  wheel  102 11  2  2011 1.6.0.jdk
    bash-3.2# mkdir -v 1.5.0
    mkdir: created directory '1.5.0'
    bash-3.2# ls -Fl
    total 0
    drwxr-xr-x  2 root  wheel   68  4 15 16:00 1.5.0/
    drwxr-xr-x  3 root  wheel  102 11  2  2011 1.6.0.jdk/
     
    bash-3.2# cd 1.5.0/
    bash-3.2# ls
    bash-3.2# 
    bash-3.2# pwd
    /System/Library/Java/JavaVirtualMachines/1.5.0
    bash-3.2# ln -sivh /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0_30 ./Contents
    ./Contents -> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0_30
    bash-3.2#  ls -Fl
    total 8
    lrwxr-xr-x  1 root  wheel  61  4 15 16:01 Contents@ -> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0_30
    

     これで終了。

    環境変数JAVA_HOMEに/System/Library/Java/JavaVirtualMachines/1.5.0/Contents/Home/を設定してあげるととりあえずjava1.5でもろもろ動いているみたい。

    EclipseのBuild Pathを設定するには、Libraryの追加からJRESystemLibraryを選択して、そこからInstalled JREの追加。MacOSMacOS X VMを選択してJRE homeに/System/Library/Java/JavaVirtualMachines/1.5.0/Contents/Home/を設定して適当チョップな名前をつける。それをJRE SystemLibraryとして登録するでOK。にんにん。

    Tags: java MacOSX

カテゴリ一覧

トップ «前の日記(2013-02-13) 最新 次の日記(2013-04-29)» 編集