Mac OS X版のダウンロードとインストール
Javaインストールで検索したら
「Oracleのサイト」と、「Java」のサイトがあった。
迷ったあと、Javaの方をインストールすることに。
Mac用にJavaをインストールするにはどうすればよいですか。
このトピックは、次に当てはまります。:
- プラットフォーム: macOS, macOS
- ブラウザ: なし
- Javaバージョン: 8.0
Oracle Java 8以降のバージョンのMacシステム要件
10.8.3以降のバージョンが実行されているX64ベースのmacOSプラットフォーム
Oracle JDK 8 and JRE 8 Certified System Configurations
管理者権限
64ビットのブラウザのみ(例: Safari)
私のMacはx64ベースなのか?:MacのプロセッサがARMベースかIntelベースかを確認する
MacのプロセッサがARMかIntelかを簡単に確認する方法 #Mac – Qiita
- ARMベース: Appleが自社で設計したプロセッサ。例えば、Apple M1, M1 Pro, M1 Maxなど。
- Intelベース: Intel社が製造したプロセッサ。例えば、Intel Core i5, i7, i9など。
M1だから、ARMだな。一応正規の調べ方でやってみる。
ターミナルを開いて、
% uname -m
x86_64
ええええ、Intelベースなのか?
次は、iTermを開いてコマンドを打ってみる。
% uname -m
arm64
どうやらRosettaを使用したターミナルセッションは、Intelをエミュレーションしているらしい。
Rosettaを使用せずにターミナルを起動した場合は、armになるそう。
コマンドを実行しているアーキテクチャがわかる。
Finderにて当該アプリを開く前の設定を行えるみたいで、
「Rosettaを使用して開く」にチェックが入ってたから、
Intelベースで動いていたみたい。
参考:【重要】MACのRosettaの確認方法と対応アプリケーションについて解説 | よっしーノート (yossi-note.com)
64ビットのブラウザのみ
Browsers
Safariは64bitらしい。
EdgeとかFirefoxとかも例にはある。Macのデフォルトブラウザではないだけだろう。
Browser | Version | Platform | Notes |
---|---|---|---|
Internet Explorer | 9+ | Windows OSs | As of April 2019 applets are no longer supported but are known-to-work in IE 11. See Oracle Java SE Support Roadmap |
Microsoft Edge | Windows OSs | As of April 2019 applets are no longer supported but are known-to-work in Edge when using IE mode. See Oracle Java SE Support Roadmap | |
Firefox | All OSs that support Firefox | On Firefox versions greater than 52 only Web Start applications are supported, Applets are not supported; | |
Chrome | Windows OSs | As of Chrome 45 only Web Start applications are supported in Chrome, Applets are not supported | |
Safari | 5.x | OS X | Use 64 bit Browsers on OS X platforms to run the 64 bit JRE Only Web Start applications are supported, Applets are not supported; |
よし、Javaのインストールに戻ろう
ダウンロード
jre-8u311-macosx-x64.dmgファイルをダウンロード
dmgファイルとは?:MacのOS上で動作する仮想ディスクイメージファイル。
※下にこんなものもあった。
まあ、正規で進む。
むむ、インストールしようとしてるのはJREらしい。
本当にこれでいいのか、、、?
JREはJVMしかインストールしてくれないらしい。
Javaは開発しないけど、動かしたいならJRE
【Java初心者向け】Javaの環境構築手順 | Soloware Logs (solo-ware.com)
Javaの開発をしたいならJDKということになります。
ややこしい理由は、『「Java」をインストールする』しか書いてないから。
Javaとは、
- コンパイラ+JVMなのか
- JVMのみなのか
公式サイトのどこ見れば違いがわかったんだろう。
下の方見ると、ReadMeがJDKとJRE両方ありますね。。。
InstallationInstructionsから、
JDK 8 and JRE 8 Installation Start Here (oracle.com)
を開きますと、両方書いてある。けど、インストールガイドだから違いというよりここの説明なんだよなあ。
サイト内検索を使って、公式サイト内で検索をかける。:指定したサイト内から検索キーワードに関連するページを探し出してくれるそう。
jre jdk 違い site:https://docs.oracle.com/
参考:【具体的に解説】サイト内検索とは?やり方や導入方法・メリットをわかりやすく解説 | ナイルのマーケティング相談室 (seohacks.net)
この公式ドキュメントがわかりやすそう。
Java SE Runtime Environment (JRE)
JREは、Javaプログラミング言語で記述されたアプレットやアプリケーションを実行するのに必要なライブラリ、Java仮想マシン、その他のコンポーネントを提供します。この実行環境は、作成したアプリケーションを独立して実行できるようにするため、アプリケーションと一緒に再配布できます。
Java SE Development Kit (JDK)
JDKには、JREのほか、アプレットやアプリケーションを開発するのに必要または便利なコンパイラやデバッガなどのコマンド行開発ツールが含まれています。
Java(tm)プラットフォームの概要 (oracle.com)
アプレット、アプリケーション、仮想マシン、コンポーネント、実行環境、再配布、
コンパイラ、デバッガ、コマンド行開発ツール
これらは一般的なワードなんだろうな
JREかJDKのどちらかをインストールすればいいということがわかった。Javaで作られたアプリケーションを単に実行したいというよりも、Javaのプログラム(簡単なもの)を書いて、コンパイルして、アプリケーションを作って、それをJVM上で実行させたいという感じで、分解してJavaプラットフォームの全体像を理解したいからJDKをインストールしよう。
JDKっと
When you install the Java Development Kit (JDK), the associated Java Runtime Environment (JRE) is installed at the same time.
JDK 8 Installation for macOS (oracle.com)
JDK(ランタイム)をインストールすると、JRE(実行環境)も同時にインストールされる。
ありがたい。
Javaアプリケーションを動かすには、絶対にJREが必要となってくるからであろう。
To install the JDK on macOS:
JDK 8 Installation for macOS (oracle.com)
- Download the required JDK
.dmg
or.tar.gz
file from Java Downloads:
.dmgと.tar.gzの違いは?
どっちでもいいらしい。
ソフトウェアのインストール後は、削除していいのか!
ソフトウェアのインストール後、ディスク領域を節約する場合は、
macOSでのJDKのインストール (oracle.com).dmg
または.tar.gz
ファイルを削除します。
/usr/binから削除するだけではアンストできないのね。
ノート:
macOSでのJDKのインストール (oracle.com)
/usr/bin
からJavaツールを削除することでJavaをアンインストールしないでください。このディレクトリはシステム・ソフトウェアの一部で、次にOSの更新を実行するときに変更がリセットされます。
システム・ソフトウェアとは?
dmg tar.gz 違い
tar.gzは、tarコマンドを使用してファイル群を圧縮した場合の拡張子らしい。
dmgとは
macOSのアプリのコンテナーです。それらを開き、アプリをアプリケーションフォルダーにドラッグしてから取り出します。これにより、ほとんどのWindowsアプリの恐ろしい「インストールウィザード」の手間を省くことができます。
DMGファイルとは何ですか(そしてどのように使用しますか)? – TheFastCode
macOSがDMGファイルを使用する主な理由は、ファイルが正しくダウンロードされ、改ざんされていないことを確認するためです。 DMGファイルには、チェックサムと呼ばれるものが含まれています。これは、基本的に、ファイルが100%無傷であることを確認します。これは、ファイルを開いているときに表示されるものです。
今回はコードを書いて、コンパイルして、実行する、という一連の流れを行いたいのでJDKをインストールすることにする。
JD22、21、17とあるが
JDK21は2026年までアップデートをしてくれるらしいので、21にしよう。
今回はmacOSに入れるけど、LinuxやWindowsも入れてみようかな今度。
tar.gzファイルをダウンロードします、、、
インストールガイドが見当たらない。22がデフォルト画面になってしまう。21を探す。
これでいいのかな
JDK22と書いてある右横の矢印(▼)をクリックすると
複数バージョン出てきた
tar.gzは、インストールガイドに載ってなかったのでこちらを参照。ターミナル上でtarコマンドを使って展開するらしい。
OpenJDK を MacOS にインストールする方法。最終版。 #Java – Qiita
.pkgがなかったから、
dmgファイルをインストールした
$ tar zvxf openjdk-14.0.1_osx-x64_bin.tar.gz
Java SEとOpenJDKは何が違うのか??
~ % /usr/libexec/java_home -V
Matching Java Virtual Machines (1):
21.0.3 (arm64) "Oracle Corporation" - "Java SE 21.0.3" /Library/Java/JavaVirtualMachines/jdk-21.0.3.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-21.0.3.jdk/Contents/Home
~ % tar zvxf ./Downloads/openjdk-21.0.2_macos-aarch64_bin.tar.gz
~ % /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
21.0.3 (arm64) "Oracle Corporation" - "Java SE 21.0.3" /Library/Java/JavaVirtualMachines/jdk-21.0.3.jdk/Contents/Home
21.0.2 (arm64) "Oracle Corporation" - "OpenJDK 21.0.2" /Library/Java/JavaVirtualMachines/jdk-21.0.2.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-21.0.3.jdk/Contents/Home
Macの場合は、これで環境構築完了。
※Windowsの場合は、環境変数設定をしなければならない。
パスは「/Library/Java/JavaVirtualMachines」ここに置いてあった。
VisualStudioCodeでの設定
JavaExtentionをインストール
VS Codeの設定で(Macだからか)JAVA_HOMEすでに設定してあった。
iTerm2でjava_homeを確認すると、jdkが設定されている
% /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk-21.0.3.jdk/Contents/Home
Javaを動かす
Javaのコードを記述して
public class Main {
public static void main(String[] args){
System.out.println("Hello World!");
}
}
コンパイルを実行
javac Main.java
コンパイル後のバイナリファイル(class拡張子)ができる
バイナリ実行
% java Main
実行結果
> Hello World!
終わり
コメント