JDKとは何ですか?Java DevelopmentKitの概要

Java Development Kit(JDK)は、JVM(Java仮想マシン)およびJRE(Javaランタイム環境)とともに、Javaプログラミングで使用される3つのコアテクノロジーパッケージの1つです。これらの3つのテクノロジーを区別し、それらがどのように接続されているかを理解することが重要です。

  • JVMは、プログラムを実行するJavaプラットフォームコンポーネントです。
  • JREは、JVMを作成するJavaのディスク上の部分です。
  • JDKを使用すると、開発者は、JVMおよびJREで実行および実行できるJavaプログラムを作成できます。

Javaを初めて使用する開発者は、Java DevelopmentKitとJavaランタイム環境を混同することがよくあります。違いは、JDKがJavaベースのソフトウェアを開発するためのツールのパッケージであるのに対し、JREはJavaコードを実行するためのツールのパッケージであるということです。

JREは、Javaプログラムを実行するためのスタンドアロンコンポーネントとして使用できますが、JDKの一部でもあります。Javaプログラムの実行はそれらの開発の一部であるため、JDKにはJREが必要です。

図1は、JDKがJavaアプリケーション開発ライフサイクルにどのように適合するかを示しています。

マシュータイソン

最近Java仮想マシンを紹介したときと同じように、JDKの技術的および日常的な定義について考えてみましょう。

  • 技術的な定義:JDKは、コンパイラとクラスライブラリを含むJavaプラットフォーム仕様の実装です。
  • 日常の定義:JDKは、Javaベースのアプリケーションを作成するためにダウンロードするソフトウェアパッケージです。

JDKとJavaコンパイラ

Javaアプリケーションの実行に使用される環境であるJREに加えて、すべてのJDKにはJavaコンパイラが含まれています。コンパイラは、プレーンテキストです- -と実行の.classファイルにそれらをレンダリング生の.javaファイルを取ることができるソフトウェアプログラムです。すぐにコンパイラの動作を確認します。まず、開発環境でJDKをダウンロードしてセットアップする方法を説明します。

JDKを使い始める

開発環境でJavaをセットアップするのは、JDKをダウンロードしてクラスパスに追加するのと同じくらい簡単です。JDKをダウンロードするときは、使用するJavaのバージョンを選択する必要があります。Java 8は最も一般的に使用されているバージョンですが、この記事の執筆時点では、Java 11が長期サポート(LTS)リリースです。Javaは下位互換性を維持しているため、最新リリースをダウンロードするだけです。

JDKパッケージ

Javaバージョンの選択に加えて、Javaパッケージも選択する必要があります。パッケージは、さまざまなタイプの開発を対象としたJava開発キットです。使用可能なパッケージは、Java Enterprise Edition(Java EE)、Java Standard Edition(Java SE)、およびJava Mobile Edition(Java ME)です。

初心者の開発者は、どのパッケージが自分のプロジェクトに適しているかわからないことがあります。通常、各JDKバージョンにはJavaSEが含まれています。JavaEEまたはJavaMEをダウンロードすると、StandardEditionが付属しています。たとえば、Jave EEは、エンタープライズJavaBeansなどのエンタープライズアプリケーション開発やオブジェクトリレーショナルマッピングのサポートに役立つ追加ツールを備えた標準プラットフォームです。

また、必要に応じて、将来別のJDKに切り替えることも難しくありません。始めたばかりのときは、正しいJavaバージョンとJDKパッケージを選択することについてあまり心配する必要はありません。

JDKバージョンの互換性

JDKはJavaプログラム用のコンパイラを提供するため、使用するJDKによって、コーディングできるJavaバージョンが決まります。たとえば、Java 8にある新しい機能プログラミング機能(矢印Lambda演算子など)を使用する場合などです。 、コンパイルするには、少なくともJava 8JDKが必要です。それ以外の場合、javacコマンドは構文エラーでコードを拒否します。

JDKをダウンロードする

このチュートリアルではJavaSEを使用するため、コアJDKクラスとテクノロジーに焦点を当てることができます。Java SE JDKをダウンロードするには、Oracleの公式ダウンロードページにアクセスしてください。図2に示すように、利用可能なさまざまなJDKパッケージが表示されます。

マシュータイソン

Java SEのダウンロードを選択する前に、他のオプションを確認してください。Javaキッチンではたくさんの料理があります!

JavaEEについて

主にJavaベースのWebアプリケーションの構築に関心がある場合は、Java EEJDKをダウンロードします。Java EE JDKには、HTTP要求処理をサポートするJavaサーブレット仕様が含まれています。すべてのJavaEE JDK実装には、JavaEEアプリケーションを実行するサーバーであるコンテナーも必要です。Glassfishは、Oracle用のJavaEEサーバーリファレンス実装です。他の人気のある実装はTomcatとJettyです。

今のところ、Java Standard EditionJDKをダウンロードしてください。

JDKのインストール

JDKインストーラーを実行すると、開発ツールソースコード、およびパブリックJREの3つのコンポーネントから選択できます。それらの1つまたはすべてをインストールできます。この場合、デフォルトを選択するだけです。

「開発ツール」オプションをインストールすると、JDKが適切になります。「ソースコード」のインストールには、コアJavaAPIのパブリッククラスのソースが含まれています。このオプションを含めると、アプリをビルドするときにソースコードを参照できます。3番目のオプション「パブリックJRE」は、JDKとJREが別個のエンティティであることを示します。パブリックJREは、他のプログラムがJavaプログラムを実行するために使用でき、JDKとは別にインストールできます。

先に進み、3つのコンポーネントすべてをインストールして、それぞれのデフォルトを受け入れます。これを行うと、JDKとJREがオペレーティングシステムのデフォルトの場所にインストールされます。Windowsでは、図3に示すように、C:\ Program Files \ Javaです。

マシュータイソン

コマンドラインのJDK

JDKとJREをインストールすると、javaコマンドがコマンドラインに追加されます。これを確認するには、コマンドシェルにドロップして、と入力しますjava -version。これにより、インストールしたJavaバージョンが返されます。(場合によっては、システムパスを完全に変更するには、システムを再起動する必要があります。)

javaインストールしておくのは良いのjavacですが、どうですか?Javaファイルをコンパイルするには、このJDK要素が必要です。

javacコマンド

javacコマンドは、内部の住んでいる/jdkディレクトリが、インストール時に自動的にシステムパスに追加されません。私たちは、インストールするオプション持っているjavac自分自身を、または私達は、このコマンドが含まIDEをインストールすることができます。まず、Javaプログラムを昔ながらの方法でコンパイルして実行します。

単純なJavaプログラム

ステップ1.簡単なJavaプログラムを書く

と呼ばれる新しいテキストファイルを作成し、Intro.javaドキュメントフォルダなどのコンピュータのどこかに配置します。

次に、非常に単純なJavaプログラムであるリスト1のコードを追加します。

リスト1.Intro.java

 public class Intro { public static void main(String[] args) { System.out.println("Welcome to the JDK!"); } } 

ステップ2.JDKでコンパイルする

次に、JDKコンパイラを使用して、テキストファイルを実行可能プログラムに変換します。Javaでコンパイルされたコードはバイトコードと呼ばれ、.class拡張子が付いています。

javacJavaコンパイラを表すコマンドを使用します。コマンドへのフルパスをコマンドシェルに入力し、Intro.javaファイルをコマンドとして渡します。私のシステムでは、リスト2のようになります。

リスト2.JDKを使用してコンパイルする

 "C:\Program Files\Java\jdk-10.0.1\bin\javac.exe" Intro.java 

これにより、コンパイルが成功するはずです。javac成功のメッセージで応答しません。新しいファイルを出力するだけです。エラーがあると、コンソール出力になります。

手順3..classファイルを実行します

これIntro.classで、と同じディレクトリにファイルが表示されIntro.javaます。

次のように入力すると実行できます。java Introリスト3.classになります。このコマンドを入力するときは、を含めないことに注意してください。

リスト3.Intro.classの実行

 C:\Users\mtyson\Documents>java Intro Welcome to the JDK! 

jarコマンド

これjavacはJDKのスターですが、/binディレクトリには必要な他のツールが含まれています。おそらく最も目立つのjavacjarツールです。

.jarファイルは、 Javaクラスのパッケージセットです。コンパイラーが.classファイルを作成すると、開発者はファイルをにまとめることができます.jar。これにより、予測可能な方法でファイルが圧縮および構造化されます。

ファイルに変換Intro.classしてみましょうjar

を配置したディレクトリに戻りIntro.java、リスト4に表示されているコマンドを入力します。

リスト4.JARファイルを作成する

 C:\Users\mtyson\Documents>"c:\Program Files\Java\jdk-10.0.1\bin\jar.exe" --create --file intro.jar Intro.class 

jarファイルの実行

これintro.jarで、ディレクトリにファイルが表示されます。.jar次に示すように、をクラスパスに追加し、内部でプログラムを実行することで、を利用できます。

 java -cp intro.jar Intro 

-cpスイッチが追加するには、Javaを伝えjarクラスパスに。.jarファイルは、この小さなプログラムにはやり過ぎですが、プログラムのサイズが大きくなり、サードパーティのパッケージに依存するため、.jarファイルは不可欠です。

IDEのJDK

JDKのダウンロードページを振り返ると、NetbeansIDEでJDKをダウンロードするオプションに気付いたかもしれません。アンIDE、または統合開発環境では、アプリケーションを開発するためのツールの凝集セットを提供するソフトウェアです。IDEは、ファイルブラウザやテキストエディタなどの一連のツールと、コードの補完やフォーマットなどの開発に固有の追加機能を備えたビジュアルオペレーティングシステムと考えてください。

Java開発では、IDEが行う重要なことの1つは、コンパイルを管理することです。つまり、IDEはコンパイルプロセスをバックグラウンドで自動的に実行するため、自分で継続的に実行する必要はありません。IDEは、進行中に実況フィードバックも提供し、コーディングエラーをその場でキャッチします。

Java用の堅実なIDEがいくつか存在します。JDKがコマンドラインでどのように機能するかを見てきたので、次にEclipseIDEでどのように機能するかを簡単に見てみましょう。

[関連項目:Java IDEの選択:Eclipse、NetBeans、およびIntellij IDEの機能、使いやすさ、プロジェクトのサイズとタイプの比較]

EclipseとJDK

Eclipseのインストールはこのガイドの範囲外ですが、それは単純なプロセスです。Eclipseには、他のプログラムと同様にインストーラーが含まれています。オペレーティングシステムに適したインストーラーはここにあります。

Eclipseがインストールされている状態で、メニューバーから[ウィンドウ]メニュー項目を開き、設定を選択します

設定ウィンドウ内に、Javaアイテムが表示されます。それを開くと、中にコンパイラアイテムが表示されます。それをクリックすると、JDKのいくつかのオプションが表示されます。

図4は、EclipseのJDKオプションのスクリーンショットを示しています。

マシュータイソン

前述のように、プロジェクトに適したJDKバージョンを選択する必要があります。内部的には、IDEはコマンドラインから実行したのと同じようにJDKコンパイラを実行します。Eclipse IDEには、独自のJDKインスタンスもあります。IDEがJDKとJREを管理するため、作業がはるかに簡単になります。

結論

この記事は、JVM、JDK、およびJREの3つのコアJavaプラットフォームコンポーネントを紹介する短いシリーズの2番目です。シリーズの次の記事を探してください。ここでは、Javaランタイム環境についてすべて学習します。

このストーリー「JDKとは?Java Development Kitの概要」は、もともとJavaWorldによって公開されました。