2012-01-15 12 views
8

OS X LionワークステーションのJava Preferencesアプリケーションには、Java SE 6 v1.6.0_29-b11-402(32ビット版と64ビット版の両方)がインストールされていることが示されています。残念ながら、私はエンタープライズエディションでのみ利用可能な追加機能が必要です。OS X LionにJava EE 6をインストール

'How install a specific jdk on Mac OS X?'の 'Jesper'のコメントは、Oracle/Sunのものではなく、Appleが提供するJavaを使用する必要があることを示しています。

  1. 私が何かを見逃していました:残念ながら、Appleがこれはいくつかの質問を依頼する私をリードするJava 6

    のエンタープライズ版を提供しているようではありませんか? AppleはJava 6のEEを提供していますか?

  2. 1が真であれば、どうすれば入手できますか? Java SE 6で「横並び」インストールできますか?
  3. 1がfalseの場合、Oracle/Sunのバージョンを使用できますか?推奨設置場所はありますか?私は/System/Library/Frameworks/JavaVM.framework/Versions/フォルダはお勧めできないと思います。
  4. Oracle/Sun版には、インストールしたくない多くの追加機能(Glassfishな​​ど)が含まれているようです。追加なしでコアSDKをインストールできますか? Tomcat 7はGlassfishの代替品として機能しますか? RESTful web service: java.lang.NullPointerException service.AbstractFacade.findAll

**編集**

この質問は、私が掲示別の質問の結果です。この特定のエラーは、アノテーションが欠落していることによるものです(@ステートレス)。この注釈は、ワークステーションにない.JARファイルに含まれているjavax.ejb。*名前空間に含まれています。

これは、Java 6のEnterprise Editionが必要であると結論づけました(これには、.JARファイルとその他の依存ファイルがありません)。どのような.JARファイルが見つからないのかを判断する方法があるとします(Netbeans 7はこれを助けてくれないようです)。おそらくプロジェクトに追加して、EEの手間を省くことができます。

答えて

17

Javaのエンタープライズエディションと呼ばれる特別なランタイムは、どのプラットフォームでも存在しません。

Java SEがあり、Enterprise Editionコンテナが実装するインタフェースがいくつかあります。

SunはJ2EEを思い付いた数年前に命名規則で市場を混乱させました。これは決してJavaの別バージョンではなく、サーバが実装して認証を受けた場合にJ2EEコンテナと呼ぶことができるAPIについたものです。

彼らはあなたがこれらのAPIに対して開発している場合は、あなたが必要とするすべては、これらのインタフェースの宣言が含まれている.jarファイルでのJava EE 6

それを呼び出す始めたとき、彼らはさらに、市場を混乱。以前はJ2EEと呼ばれていたこれらのAPI .jarファイルをダウンロードできます。しかし、彼らはそれだけでは無用です。

しかし、Java EEサーバーを作成したいと思っているのですが、使用したいと思っています。サーバーを使用する場合は、Java EE準拠のサーバーをダウンロードし、それが提供する.jarファイルを使用する必要があります。

使用する価値のあるすべてのIDEには、通常、展開するサーバーを定義することによって、これらがいくつかの形式で含まれています。 Tomcatは完全なEEコンテナではありません。サーブレットコンテナで、完全なEE仕様のサブセットです。

As of OSX Lion, Apple doesn't supply a JDK anymoreのように、それはすでに明らかに既に正常に取得しているのはOracleだけです。

+0

わかりません。 Enterprise Editionのようなものがない場合、Oracleは引き続きこの用語を使用しますか? http://www.oracle.com/technetwork/java/javaee/documentation/javaee6sdku3-relnotes-444316.html – craig

+4

どこからでも「Java EE」をダウンロードするようなものではありません。これは、いくつかの実装(GlassFish、JBoss AS、WebSphere、WebLogicなど)をダウンロードし、このサーバを再開発するようなものです。 – Xorty

+0

実際には、Java SEではそれとは異なります。 Java SEもダウンロードしませんが、実装をダウンロードします。オラクルの実装だけでは、Java SEと多かれ少なかれ同程度のシェアを獲得しましたが、JRockit、MJR、Microsoftバージョン(一番有名なものです)がありましたが、まだIBMバージョンがあります。 GCJ(決して実際には動作しません)と他のいくつかの曖昧な実装です。 OpenJDKは最も有名な選択肢ですが、Oracleのバージョンはこれに基づいています。 –

0

Java EEのダウンロードがあります。 http://www.oracle.com/technetwork/java/javaee/downloads/index.htmlしかし、複数のコンテナで実行するアプリケーションを開発しようとしている場合を除き、それは特に有用ではありません。

通常、コンテナをダウンロードして開発することをお勧めします。例えばグラスフィッシュ(上記と同じリンクで入手可能)。この作業は、NetbeansなどのIDEのサポートによって簡単に行うことができます。 GlassfishとJava EE APIがすでに含まれているバージョンのNetbeansをダウンロードして作業を開始できます。他のIDE /コンテナの組み合わせも可能ですが、通常はプラグインがあります。

OSX用のJava 6 JDK/JREはまだアップルの製品です。彼らはほとんどのコードをOracleに移行しましたが、OSXバージョンのJDK 7はリリース状況に近く、あなたの目的には十分に成熟しているかもしれません。私の最高の推測はそうです。

+0

タイトルにはっきりとしたライオンとして[AppleはJDKを直接サポートしていません。それはOracleによって提供、開発、保守されています。](http://stackoverflow.com/a/6765946/177800) –

+0

あなたがリンクしているスタックオーバーフローの問題によってリンクされている記事を読んで、Openjdk 7を参照していることに気付くでしょう。JDK6 for Lionをダウンロードする方法については、次のような質問への最初の答えを確認してください。http://stackoverflow.com/questions/6614380/jdk-on-osx-10-7-lion – Bill

+0

** ANSWER **を読んでいれば、それはLionでJavaがどのように提供されているかです。 –

5

Java EE 6は仕様であり、APIにはインタフェースとして表現されるものもあります。 Java EE 6自体は、それらのAPIの実装ではありません。 Java EE 6 APIを使用する場合は、互換性のあるJava EEアプリケーションサーバーを使用する必要があります。 GlassfishはJava EE 6のリファレンス実装ですが、準拠している他のサーバもあります。 JBossも人気のあるオプションです。

これらはMac OS Xで簡単にインストールできます。

関連する問題