私は何年もJava SEに取り組んでおり、Javaアプリケーションを実行するにはJREとSDKという2つのものがありました。今私はJava EEに移行しています。上記の2つの要素(SDKとJRE)に加えて、アプリケーションサーバーが必要であることを知りました。しかし、Java EEのダウンロードページにアクセスすると、SDKとApplication Serverのみが提供されます。さらに、インターネット上では、Java EE仕様に従ってApplication Serverをインストールするだけでよいことが分かりました。 Java EEはアプリケーションサーバーによって実現される仕様ですか?次に、JREはどこにありますか?アプリケーションサーバーの内部にあるのですか、Standard EditionのJREは分散コンポーネントを実行するために使用されますか?アプリケーションサーバーは、どのJavaランタイム環境を使用していますか?
答えて
のJava EEはい、仕様のセットです。それらはJava EEサーバーによって実現される傾向がありますが、完全なEE仕様の一部を実装する多数のフレームワークがあります。
エンタープライズサーバーはJavaアプリケーションです。実行するにはJava Runtime Environmentが必要です。通常、JSPのようなものをコンパイルするために、Javaコンパイラであるjavacにもアクセスする必要があります。このため、JavaのSDKであるJava Development Kitでそれらを実行するとうまくいくのです。サーバーは通常、実行中のプラットフォーム上の通常のインストール場所でランタイムを探します。また、環境変数JAVA_HOMEを使用してJDKの場所を特定することもよくあります。
Java EEの特定のサブセットのみを使用する場合は、その部分のスタンドアロン実装を見つけることができるかどうかを確認することが役立ちます。
これは、Java(SE/JEEなど)のすべてのバリエーションで使用されているJRE/JVM実装が1つしかないことを意味しますが、SDK(コードライブラリと思われる)の内容が異なる可能性があります。 – hadaytullah
まあ、そうではありません。いくつかの異なるJVMベンダーがあります。最も一般的に使用されるのはOracles JVMで、Mac、Windows、Linuxの両方で使用できます。ただし、OpenJDKのバージョン、リファレンス実装、およびIBMのものがあります。オラクルはJRockitも提供しています。これはJVMに支払われます。私が知る限り、上記のすべてがJREとJDKの両方を提供します。それらはすべてJava VMとして認定されています。ただし、SDKはまったく変わるべきではありません。これはすべてのVMの標準です。 –
Java EEは、アプリケーションサーバーによって実現される仕様ですか。
はい
第二に、どこJREがあり、それは、アプリケーション・サーバーまたはStandard EditionのJRE内では、分散コンポーネントを実行するために使用されるのですか?
いいえ、ほとんどのサーバーは通常、SDKを使用し、ないJRE
- 1. JAVAは私がBerkeleyデータベースを使用していたデータベース環境
- 2. どのJava WebフレームワークとWebアプリケーションサーバーを使用しますか?
- 3. C2DM - Google App EngineのJavaランタイム環境でHttpsURLConnectionがサポートされていません
- 4. マクロにlstlisting環境を使用していますか?
- 5. Turnkey Linuxを使用して、Windows環境でJava Webサービスをホストしますか?
- 6. 私の開発環境はユーザーの環境を反映していますか?
- 7. java:プロダクション環境でのprintStackTraceの使用
- 8. Railsで開発環境を運用環境で使用しているのはなぜですか?
- 9. Glassfish 3.1:開発環境や運用環境で実行していますか?
- 10. Java SE環境でjavax.interceptorを使用できますか?
- 11. Javaランタイム環境と.NETフレームワークの比較は、コンパイルプロセスの面でどのように行われますか?
- 12. App Storeテスターは実際のテスト環境を使用していますか?
- 13. 環境変数perlを使用して
- 14. eclipseのGWT javax.jws.WebMethodは、Google App EngineのJavaランタイム環境ではサポートされていません
- 15. システムイメージとしてのコード(シリアライズされたランタイム環境)対ソース(テキスト)
- 16. rake仕様rails環境を使用していません
- 17. 開発用にMini/Parallels仮想環境を使用していますか?
- 18. 使用して環境変数
- 19. .NETアプリケーションがAzure環境または非Azure環境で動作しているかどうかを検出
- 20. FlashとPHP、ライブユーザ環境:ソケットはどのように使用しますか?
- 21. アプリケーションのWDKビルド環境でのブーストを使用しますか?
- 22. djangoプロジェクトとランタイム環境を一度にクリックして展開するには
- 23. DjangoでSQLiteを本番環境で使用していますか?
- 24. Javaで環境変数の値を取得していますか?
- 25. DLR 0.9はMicrosoftが運用環境でサポートしています
- 26. 'java'バイナリにはどのような環境変数が影響しますか?
- 27. JavaとCloud SQLを使用するGoogleフレキシブル環境のKillbill
- 28. ヘルプは、致命的なエラーがJavaランタイム環境で検出された
- 29. OpenGL ESは環境シェーダをサポートしていますか?
- 30. 環境開発は何を意味していますか?
Whoa!一度に1つの質問をお願いします。 – adarshr
'distributed components'とはどういう意味ですか? – kromit
JEEアプリケーションサーバも、JREのみで動作します(Javaコンパイラなし)。しかし、アプリケーションサーバーを実行している間は、java.exeコマンドに-serverオプションを渡してサーバーVMを使用します。 JEE仕様のアプリケーションサーバーに関しては、一部のアプリケーションサーバーは一部または全面的に苦情を申し立てています。サーバーのドキュメントを参照して選択する必要があります。 – Seshagiri