{"componentChunkName":"component---src-templates-post-js","path":"/2022/06/06/how-to-install-java-on-macos-in-2022/","result":{"data":{"wordpressPost":{"id":"2e008c38-46ff-5ca1-8beb-9e4092a90116","title":"macOS で Java を使う方法 ver. 2022","excerpt":"<p>最近新しい MacBook Pro を買って色々セットアップをしていたのですが、Java のインストールとかが若干面倒だなと思ったので簡単にまとめます。 やり方だけまずは説明 事前準備 まずは HomeBrew をインス [&hellip;]</p>\n","slug":"how-to-install-java-on-macos-in-2022","dateObject":"2022-06-06T13:44:00.000Z","date":"June 06, 2022","categories":[{"name":"Uncategorized","slug":"uncategorized"}],"tags":[{"name":"java","slug":"java"},{"name":"macos","slug":"macos"}],"author":{"name":"中の人（管理者）","slug":"engineering_8qmk0b"},"featured_media":{"media_details":{"sizes":{"large":null,"medium_large":null}},"source_url":"https://engineering-wp.mobalab.net/wp-content/uploads/2020/04/Java_logo_icon-700x392-1.png"},"wordpress_id":2294}},"pageContext":{"id":"2e008c38-46ff-5ca1-8beb-9e4092a90116","nextPath":"/2022/05/31/regex_replace-in-spark/","nextTitle":"Spark での regex_replace","prevPath":"/2022/06/08/rails-migration-postgresql-timestamp-0/","prevTitle":"Rails のマイグレーションで PostgreSQL の timestamp(0) 型のカラムを作る","tableOfContentsData":[{"id":"やり方だけまずは説明","tag":"2","text":"やり方だけまずは説明","active":false},{"id":"事前準備","tag":"3","text":"事前準備","active":false},{"id":"OpenJDK 最新版のインストール","tag":"3","text":"OpenJDK 最新版のインストール","active":false},{"id":"バージョンを指定して入れたい","tag":"3","text":"バージョンを指定して入れたい","active":false},{"id":"Java 8 を入れたい","tag":"3","text":"Java 8 を入れたい","active":false},{"id":"説明・補足","tag":"2","text":"説明・補足","active":false},{"id":"OpenJDK は HomeBrew の core に入った","tag":"3","text":"OpenJDK は HomeBrew の core に入った","active":false},{"id":"M1 Mac では openjdk@8 は使えない","tag":"3","text":"M1 Mac では openjdk@8 は使えない","active":false},{"id":"AdoptOpenJDK は Eclipse に移管された","tag":"3","text":"AdoptOpenJDK は Eclipse に移管された","active":false},{"id":"その他にも選択肢は沢山","tag":"3","text":"その他にも選択肢は沢山","active":false},{"id":"まとめ","tag":"2","text":"まとめ","active":false}],"replacedContent":"\n<p>最近新しい MacBook Pro を買って色々セットアップをしていたのですが、Java のインストールとかが若干面倒だなと思ったので簡単にまとめます。</p>\n\n\n\n<h2>やり方だけまずは説明</h2><a class=\"anchor\" id=\"やり方だけまずは説明\"></a>\n\n\n\n<h3>事前準備</h3><a class=\"anchor\" id=\"事前準備\"></a>\n\n\n\n<p>まずは HomeBrew をインストールします。詳細は説明しません。</p>\n\n\n\n<p>2022年5月現在、以下のコマンドは<strong>必要ありません</strong>。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nbrew tap homebrew/cask-versions #不要\n</pre></div>\n\n\n<h3>OpenJDK 最新版のインストール</h3><a class=\"anchor\" id=\"OpenJDK 最新版のインストール\"></a>\n\n\n\n<p>一般ユーザーとして普通に Java を使うだけであれば、以下の通りです。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nbrew install openjdk\nsudo ln -sfn $(brew --prefix)/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk\n</pre></div>\n\n\n<p>2022年5月現在、この方法では OpenJDK 18 がインストールされます。</p>\n\n\n\n<p>また、 <code>JAVA_HOME</code> を設定する必要があれば、 <code>.bashrc</code> などに以下を記載します。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nexport JAVA_HOME=$(/usr/libexec/java_home)\n</pre></div>\n\n\n<h3>バージョンを指定して入れたい</h3><a class=\"anchor\" id=\"バージョンを指定して入れたい\"></a>\n\n\n\n<p>最新版では無く、開発しているシステムで使っている Java のバージョンを入れたい、というのはよくある話です。例えば、LTS である OpenJDK 17 を入れたい場合などです。その場合、以下の通りにします。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nbrew install openjdk@17\nsudo ln -sfn $(brew --prefix)/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk\n</pre></div>\n\n\n<p><code>JAVA_HOME</code> の設定は以下の通りです。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nexport JAVA_HOME=$(/usr/libexec/java_home -v17)\n</pre></div>\n\n\n<p>ただし、OpenJDK 8 はこの方法では入れられません。</p>\n\n\n\n<h3>Java 8 を入れたい</h3><a class=\"anchor\" id=\"Java 8 を入れたい\"></a>\n\n\n\n<p>Java 8 を入れたい場合は、OpenJDK ではなく Eclipse Temurin 8 というものを入れます。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nbrew tap homebrew/cask-versions\nbrew install --cask temurin8\n</pre></div>\n\n\n<p><code>JAVA_HOME</code> の設定は以下の通りです。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nexport JAVA_HOME=$(/usr/libexec/java_home -v1.8)\n</pre></div>\n\n\n<h2>説明・補足</h2><a class=\"anchor\" id=\"説明・補足\"></a>\n\n\n\n<h3>OpenJDK は HomeBrew の core に入った</h3><a class=\"anchor\" id=\"OpenJDK は HomeBrew の core に入った\"></a>\n\n\n\n<p>少し前のサイトとかだと以下のようなコマンドでインストールする方法を説明しています。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nbrew install --cask java\n</pre></div>\n\n\n<p>以前は HomeBrew Cask という仕組みで Java をインストールしていたのですが、今では普通に <code>brew</code> コマンドでインストールできます。経緯とかは細かく調べてないので詳細は省略します。</p>\n\n\n\n<h3>M1 Mac では openjdk@8 は使えない</h3><a class=\"anchor\" id=\"M1 Mac では openjdk@8 は使えない\"></a>\n\n\n\n<p>HomeBrew に <code>openjdk@8</code> は存在するのですが、Intel Mac でしか使えません。</p>\n\n\n\n<p><a href=\"https://formulae.brew.sh/formula/openjdk@8\">openjdk@8 — Homebrew Formulae</a></p>\n\n\n\n<p>従って、M1 Mac で Java 8 を使いたい場合は、違った JDK を入れる必要があります。</p>\n\n\n\n<h3>AdoptOpenJDK は Eclipse に移管された</h3><a class=\"anchor\" id=\"AdoptOpenJDK は Eclipse に移管された\"></a>\n\n\n\n<p>Java 8 のパッケージもリリースしていた AdoptOpenJDK というプロジェクトがあったのですが、昨年くらいに Eclipse プロジェクトに移管されました。</p>\n\n\n\n<p><a href=\"https://blog.adoptopenjdk.net/2021/03/transition-to-eclipse-an-update/\">Transition to Eclipse &#8211; An Update | AdoptOpenJDK Blog</a></p>\n\n\n\n<p>少し古いサイトだと、Java 8 のインストール方法として以下のコマンドのように AdoptOpenJDK を使った方法を紹介しています。</p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n$ brew tap AdoptOpenJDK/openjdk\n$ brew cask install adoptopenjdk8\n</pre></div>\n\n\n<p>（試していませんが）多分今もこのコマンドは使えると思いますが、上述の通り AdoptOpenJDK は Eclipse プロジェクトに移管されたので、Eclipse Temurin が提供する Java 8 （ <code>temurin8</code> ）を使う方が良いと思います。</p>\n\n\n\n<h3>その他にも選択肢は沢山</h3><a class=\"anchor\" id=\"その他にも選択肢は沢山\"></a>\n\n\n\n<p>多くのサイトで解説されているので詳細は省きますが、Oracle が Java のラインセンスを変更して以降、星の数ほどの JDK が世の中にリリースされています。</p>\n\n\n\n<p>それら JDK にはそれぞれの存在意義があり、商用システムの場合にはどの JDK・バージョンを使うかを慎重に選択する必要があると思いますが、自分の Mac で開発環境を作るのであれば、Java のバージョンがあっていてライセンス的に問題なければ、どれを使っても良いと思います。そういった観点から、今回は OpenJDK （Java 8 の場合は Temurin）のインストール方法を説明しました。</p>\n\n\n\n<h2>まとめ</h2><a class=\"anchor\" id=\"まとめ\"></a>\n\n\n\n<p>Java を巡る環境は日々変わっています。2022年5月現在、M1 Mac で Java を使いたい場合、</p>\n\n\n\n<ul class=\"wp-block-list\"><li>最新版（18）、LTS (11 or 17) の場合 OpenJDK</li><li>Java 8 の場合 Temurin</li></ul>\n\n\n\n<p>を HomeBrew でインストールする方法が簡単で良いと思います。なお、OpenJDK のインストールに以前は HomeBrew Cask を使用していましたが、今は <code>brew install openjdk</code> だけですみます。</p>\n"}},"staticQueryHashes":["156639431","195851561","2295443436","3007017043"]}