これは何百万回も聞かれ、宿題をしましたが、最後に完全に理解していないのは、「Java EEJDK」があるのかということです。
SDKをダウンロードすると、不要なものをたくさんインストールしようとします。そこで、読んでみると、実際にはJavaSDKは技術的にJDKとは関係のないツールのセットであることがわかりました。したがって、私が探しているのは、JDKのみのクリーンでシンプルなスタンドアロンダウンロードです。
「JavaSEJDK」は、Sun(現在のOracle)のWebサイトから常に入手できます。ただし、私はWebアプリケーションを開発しており、Java EE機能のいくつか(javax.servlet、javax.validation、javax.persistence、javax.transaction)に興味があります。つまり、実際に私が本当に探しているのは「JavaEEJDK」です。
私は典型的なMaven/Tomcat / Spring / Hibernateセットアップを使用しており、これまでは、Java EE仕様のこれらの部分について、プロジェクトにMavenで提供されたスコープのAPIのみの依存関係を常に追加していました。
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
したがって、プロジェクトに必要なすべてのJava EE APIに対してこれを行う場合、実際には、手動で宣言された追加のJavaEEコンポーネントとともにJavaSEJDKを使用しています。さらに、Java EE SDKインストールに付属のJDKを使用するようにIDEに指示すると、これらの追加の名前空間は使用できません。
言い換えると、すべての目的と目的で、Java EESDKダウンロードに付属するJDKは「JavaSEJDK」をインストールしたときに取得するJDKと同等であるように見えます...これが正しければ、 Java EE SDKをインストールする必要はなく、Java(SE)JDKを使用して、必要なJavaEEコンポーネントを上記のように*-api/provided依存関係として宣言するだけです。
ですから、私の質問は次のとおりです。私が上で説明したのは正しい方法ですか、それとも「Java EE JDK」のようなものはありますか?つまり、javax.servletやjavax.resourcesなどの未実装のインターフェースが付属しているJDKですか?そして、そのような獣が存在する場合、どこからダウンロードしますか?