Java基礎編(2024/4月現在)

Javaの環境作成

Javaの開発を行う方法は色々あります。ここでは学習の方法としていくつか紹介します

  1. コマンドプロンプト
  2. VsCode+Maven
  3. Eclipse
  4. dokojava

コマンドプロンプトでの実行環境作り

  1. JDKのインストール
  2. pathの設定
  3. 確認
  4. VsCodeでコーディング、コンパイル、実行

一番基本のコマンドプロンプトを使った開発実行環境を順番に紹介していきます

JDKのインストール

JDkはJava Development Kitの略で、これをインストールすることで開発と実行ができます。JREはJava Runtime Equipmentで実行環境だけです。

Javaには短いながらも歴史があり、徐々に機能が変わっています。またOracleが一時有償サポートをうたったために、oracleから離れた各社がそれぞれにOpenJDKを出したためにさらにバージョンが増えてしまいました。

現在はまた無償での実行が可能になったのですが、別れたままなので、どのバージョンに設定するか迷うところです。以前は私もMicrosoftで授業をしていましたが、今回はoracleに戻って解説をします。

現在の(2024/4/1現在)最新バージョンはjava22です。しかしLTS Long Time Supportといって長期保障のバージョンがあるので、java21を使用します。

では、ブラウザで「java download」で検索して、「Java Downloads | Oracle 日本」を探します。

java download

java downloadのページでjava21を選択し

その中からwindowsを選択し、msiをダウンロードします。

downloadできたらダブルクリックしてインストールを開始します

installerが起動されます

java install

フォルダーは変更せずにインストールしました。変えてもかまいませんがpathの指定が変わります

java install

インストールが終了しました

java install

pathの設定

コマンドプロンプトでプログラムを実行する際に、そのプログラムがどこに保存されているかという経路を表すpathの設定が必要になります。

デスクトップにPCのアイコンがあればそれを、もしなければファイルエクスプローラーを開いて左上にある「一つ上の階層へ」の上向きのアイコンを何回かクリックしてPCを表示して、右クリックして

pc icon

プロパティを選択します

pc proparty

表示された詳細情報の下の方にある関連設定から「システムの詳細設定」を選んでください。

system proparty

システムのプロパティが表示されたら「環境変数」を選択

environment

システムの環境変数に「JAVA_HOME」を追加、値としてさきほどインストールしたjdkのフォルダーへのpathを入力します。pathの最後に\はいりません。

java_home

つづいて 「path」の設定を編集で開き、「%JAVA_HOME%\bin」を追加して、一番上に移動させます。

path設定

OKで2回閉じて設定終了です。

確認

ここで、新たにコマンドプロンプトを開きます。この作業前に開いてあったコマンドプロンプトではだめです。

コマンドで「path」と入力します。表示されたpathの順の先頭にJDKのpathが出ていれば成功です。そうでなければ前に戻って修正してください

java -version」と「javac -version」と入力して、インストールしたjavaのバージョンが表示されれば成功です

java バージョン確認

VsCodeでコーディング、コンパイル、実行

javaの実行環境はできましたが、ソースがなければ動きません。以前は、色々なエディターがあって個人の趣味で色々ありましたが、個人的には今やVsCode一択と言っていいのではないでしょうか。

VsCode(Microsoft Visual Studio Code)はMicrosoftが開発した汎用のエディターですが、Mavenというツールと組み合わせたりすると開発環境としても使えます。それは次の章で行います。

まずVsCodeをダウンロードします。「vscode インストール」で検索をかけて、visualstudio.comのサイトを開きます。

vscode site

downloadの中からWindowsのsystem installerをクリックしてダウンロードします。

vscode install

ダウンロードフォルダーにダウンロードされたら実行します。インストールはすぐ終わります。

vscode install

デスクトップにアイコンができるので、ダブルクリックして起動してください。まず英語版で起動されますが

vscode install

起動直後に右下に次のようなメッセージが表示されます。ここの表示には気を付けてください。初めて何かを起動するとその瞬間にそれに必要なものを提示してきますので、その場でインストールしてください。その機会を逃さないように。

インストールするとvscodeが再起動されて、日本語に変わります。これらの機能は拡張機能というもので、左側に縦に並んだアイコンの上から5番目に入っています。今入れたのはJapanese Language Pack for Visual Studio Codeというもので、インストールしたりアンインストールしたり、検索したりできます。

さて、これからコーディングしていくわけですが、ファイルを開く方法が色々あります。

  1. エクスプローラーからファイルアイコンをVsCodeにドロップする
  2. ファイルメニューからファイルを開くで指定する
  3. ファイルメニューでフォルダーを指定してファイル一覧からを開く
  4. ファイルメニューからワークスペースを開いてファイル一覧から開く

人によってそれぞれとは思いますが、私は3番目のフォルダーを指定する方法が好きです。というのは、VsCodeを色々な言語で、色々な実行環境で開くので、フォルダーごとに分類して作っています。そこでフォルダーを指定するとその言語用の設定が自動適用されるようにしたいのです。ではドキュメントフォルダーの中に試しにワークスペースとしてのフォルダーを作成し、教科書のチャプターを作成し、ソース用のフォルダーを作ってその中にソースを作る流れをやってみましょう。

最初はまずドキュメントフォルダーを指定しておきます。次回からはドキュメントフォルダー中のそれぞれのフォルダーを指定します。

フォルダー指定

フォルダーを新規に作成するときは、以下のようにフォルダーのファイルが無い部分をクリックして青い枠を描画させてから右上のフォルダー作成アイコンをクリックします。

フォルダー作成 フォルダー作成

今回は「javatest」というフォルダーを作成しました。

フォルダー作成

続いてさらにその下に「chap00」というフォルダーを作りました。その下にさらに「Code1」というソース作成実行用のフォルダーを作りました。

フォルダー作成

さて、ようやくここからソースファイルを作成します。新規ファイルのアイコンをクリックして、「Main.java」を作ります。

ソース作成

すると、その瞬間に今度はjava関連の拡張機能のインストールを促されます。もちろんインストールします。

extension install

インストールされるのはExtension Pack for Javaという拡張機能で複数のツールのセットです。

extension pack for java

インストールが終わるとJDKを入れましょうと言ってきますが、すでに最初に入れてあるので無視して×で閉じてください。拡張機能の画面からソースの入力に戻るには左の一番上のアイコンのエクスルローラーをクリックします。そしておなじみにHello worldを入力します。

ソース入力
Main.java
	public class Main{
		public static void main(String[] args) {
			System.out.println("Hello world");
		}
	}

CTRL+Sで保存しましょう。エクスプローラーで確認します。

Main.javaが保存されていたら、エクスプローラーのファイル階層が表示されている場所の右側の文字が入力されていない部分をマウスでクリックします。

ファイル確認

するとコマンドが手入力できるようになりますのでここで「cmd」と半角小文字で入力してエンターキーを押します。これがコマンドプロンプト呼び出しです。

ファイル確認

このようにしてコマンドプロンプトを呼び出すと、自分が実行したいフォルダーをカレントフォルダーとしてコマンドプロンプトを開くことができます。

続けて、javaのコンパイル「javac -encoding utf-8 Main.java」と実行の「java Main」を入力します。

Main.javaコンパイル実行
java Main.java
java Main

コンパイルはjdkをインストールしてjavac.exeへのpathが通っているのでこのフォルダーで実行ができるようになったのです。もしpathが設定されていなければこのフォルダーでコンパイルを実行するのはもっと面倒になります。

java18以降、javaのencodingのデフォルトがutf-8になったのでスイッチはいらなくなりました。(java 18 JEP 400 UTF-8 by Default)またコンパイルする際に「-encoding utf-8」というスイッチを追加しています。これは実はVsCodeに関係があります。VsCodeではなにも指定していないとソースコードはutf-8エンコーディングで作成されます。VsCodeの右下の青い帯の部分にUTF-8 CRLFと書いてあるのが見えるでしょう。もしエンコーディングを指定しないとjavacはこのコマンドプロンプトのデフォルトの設定であるShift-JISでコンパイルを始めてしまいます。すると文字化けが発生してコンパイルがエラーになってしまいます。そこでこのスイッチを指定するのです。

ファイル確認

実行するときはjavaを呼び出してクラス名を指定します。Main.classとするとエラーになります。じつはコンパイルしなくても「java Main.java」でも動きます。こまったことに。