OS X 10.11/El CapitanでAdobe Illustrator CS6を最新Java SE 8で動かす

  • 22
    いいね
  • 1
    コメント

2017年9月24日現在、macOS 10.13 (High Sierra) GM (Golden Master) において、本件を確認 :D


この文章は、Adobe Illustrator CS6 起動時に要求される Java 6 SE ランタイムをインストールせずに、最新版 Java SE 8 で Illustrator CS6 を起動させる方法をまとめました。このタイトルには、「OS X 10.11/El Capitan で」が入っていますが、El Capitan で変更があった System Integrity Protection(SIP)を除けば、CS6 が動作する OS X 10.8 (Mountain Lion)からmacOS 10.13 (High Sierra)でも通用します。

El Capitan でIllustrator CS6を起動したら、Java 6 SEランタイムを要求された><

先日、OS X Yosemite 10.10.5からOS X El Capitan 10.11.2へアップグレードしたところ、Adobe Illustrator CS6 の起動時に Java SE 6 ランタイムを要求してきた。

needJava.png

手元の El Capitan 上には、Java SE 8 をすでに入れており、今さら、Apple の legacy Java for OS X 2015-001 を入れたくなかった。そこで、Illustrator CS6 の起動時の挙動とグーグル先生からの回答を合わせると、どうやら以下の2つの空ディレクトリを作れば十分であることが分かった12

$ sudo mkdir -p /System/Library/Java/JavaVirtualMachines/1.6.0.jdk
$ sudo mkdir -p /System/Library/Java/Support/Deploy.bundle

ちなみに、Adobe公式のこのヘルプIllustrator Help /
起動時に強制終了するかまたは Java 6 のインストールを要求される(Mac OS X 10.8 | llustrator CS6)
では、あくまでも Apple の legacy Java for OS X を入れるように勧めている。

El Capitan 以降で /System 以下に書き込めない><

はいはい、OS X 10.11/El Capitan で変更があった例の System Integrity Protection (SIP)ですよねー♪
それゆえ、以下の一連の手順を実行することで、無事に目的に達した3

  1. リカバリーモード(⌘ キーと R キーを押しながら起動)で起動し、ターミナルを立ち上げる。
  2. ターミナルで # csrutil disable を実行する4
  3. リブート # reboot して、OS X El Capitan を標準起動する。
  4. ターミナルを立ち上げて、前述の2つの空ディレクトリを作成する。
  5. 再び、リカバリーモードで起動し、ターミナルを立ち上げる。
  6. ターミナルで # csrutil enable を実行する。
  7. リブート # reboot して、OS X El Capitan を標準起動すると、Illustrator CS6 が最新 Java 8で立ち上がる。

  1. Eclipse Kepler for OS X Mavericks request Java SE 6 - stack overflow 

  2. Java SE 8 on Mac OS X - Oliver Downling 

  3. El_Capitan_and_Homebrew 

  4. SIPが有効($ csrutil status)であるときに、リカバリモードで書き込めないのが当たり前だと思っていて、実際に友人は、SIP有効のときに例の2つのディレクトリを書き込めなかったと教えてくれました。SIP有無に依らず、リカバリモードでマウントされている /Volumes/Macintosh HD/ に潜って、直接例の2つのディレクトリを書き込む試行をやってみてもよいかもしれない。