私は何年も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ランタイム環境のエラー
- 2. Javaランタイム環境| DeploymentRuleSet.jar | ruleset.xml
- 3. JAVAは私がBerkeleyデータベースを使用していたデータベース環境
- 4. どのJava WebフレームワークとWebアプリケーションサーバーを使用しますか?
- 5. Wildfly 8.0.0のOsgiランタイム環境
- 6. オンラインサーバーにJavaランタイム環境を設定するには
- 7. Javaランタイムはネイティブメモリをどのように使用しますか?
- 8. C2DM - Google App EngineのJavaランタイム環境でHttpsURLConnectionがサポートされていません
- 9. ランタイム環境、ランタイムエンジン、およびランタイムライブラリの違いは何ですか?
- 10. Turnkey Linuxを使用して、Windows環境でJava Webサービスをホストしますか?
- 11. マクロにlstlisting環境を使用していますか?
- 12. java:プロダクション環境でのprintStackTraceの使用
- 13. 私の開発環境はユーザーの環境を反映していますか?
- 14. エラー:レジストリキー 'ソフトウェア\ JavaSoftの\ Javaランタイム環境' \ CurrentVersionのエラー」
- 15. Firebase Cloud Messagingのドキュメントで、「自分の環境にあるアプリケーションサーバー」は何を意味していますか?
- 16. Railsで開発環境を運用環境で使用しているのはなぜですか?
- 17. Java SE環境でjavax.interceptorを使用できますか?
- 18. 既にマルチスレッド環境でJava Stream APIを使用しています
- 19. ランタイム環境のみを使用してAccessデータベースにデータをインポートできますか?
- 20. Javaランタイム環境と.NETフレームワークの比較は、コンパイルプロセスの面でどのように行われますか?
- 21. Application InsightsはJava用の複数の環境をサポートしています
- 22. Glassfish 3.1:開発環境や運用環境で実行していますか?
- 23. ConfiguratonBuilderを使用してホスティング環境を取得しますか?
- 24. Railsはどの環境を使用するのですか?
- 25. App Storeテスターは実際のテスト環境を使用していますか?
- 26. Springの環境抽象化はPropertyEditorsを使用していますか?
- 27. eclipseのGWT javax.jws.WebMethodは、Google App EngineのJavaランタイム環境ではサポートされていません
- 28. Javaランタイム環境で致命的なエラーが検出されました - .EXCEPTION_ACCESS_VIOLATION
- 29. システムイメージとしてのコード(シリアライズされたランタイム環境)対ソース(テキスト)
- 30. 環境変数perlを使用して
Whoa!一度に1つの質問をお願いします。 – adarshr
'distributed components'とはどういう意味ですか? – kromit
JEEアプリケーションサーバも、JREのみで動作します(Javaコンパイラなし)。しかし、アプリケーションサーバーを実行している間は、java.exeコマンドに-serverオプションを渡してサーバーVMを使用します。 JEE仕様のアプリケーションサーバーに関しては、一部のアプリケーションサーバーは一部または全面的に苦情を申し立てています。サーバーのドキュメントを参照して選択する必要があります。 – Seshagiri