在OS X Lion上安装Java EE 6

我的OS X Lion工作站上的Java Preferences应用程序表明我安装了Java SE 6 v1.6.0_29-b11-402(32位和64位版本).不幸的是,我只需要在企业版中提供其他功能.

‘Jesper’在’How install a specific jdk on Mac OS X?‘中的评论表明我需要使用Apple提供的Java,而不是Oracle / Sun提供的Java.不幸的是,Apple似乎没有提供Java 6企业版.

这让我提出了一些问题:

>我错过了什么吗? Apple是否提供Java 6的EE?
>如果1为真,我该如何获得?可以与Java SE 6“并排”安装吗?
>如果1为假,可以使用Oracle / Sun版本吗?是否有推荐的安装位置?我猜不推荐使用/System/Library/Frameworks/JavaVM.framework/Versions/文件夹.
> Oracle / Sun版本似乎包含了许多我不想安装的附加内容(例如Glassfish).我可以安装带有额外内容的核心SDK吗? Tomcat 7是否可以作为Glassfish的替代品?

**编辑**

这个问题是我发布的另一个问题的结果:RESTful web service: java.lang.NullPointerException service.AbstractFacade.findAll.似乎这个特殊错误是缺少注释的结果(@Stateless).此注释在javax.ejb.*命名空间中“包含”,该命名空间包含在我的工作站上不存在的.JAR文件中.

这使我得出结论,我需要Java 6的“企业版”(它将缺少.JAR文件和其他相关文件).我想如果有办法确定缺少哪个.JAR文件(Netbeans 7似乎没有帮助),我可能只是将它添加到项目中并跳过EE麻烦.

最佳答案
对于任何平台,都没有称为Enterprise Edition of Java的特殊运行时.

有Java SE,Enterprise Edition容器只实现了一些接口.

Sun在几年前提出J2EE时,将市场与命名惯例相混淆.它从来都不是Java的单独版本,只是在API上添加了一些,如果服务器实现它们并通过了一些认证,就可以称自己为J2EE容器.

当他们开始称之为Java EE 6时,他们进一步混淆了市场.

如果您正在针对这些API进行开发,那么您需要的只是包含这些接口声明的.jar文件.您可以下载以前称为J2EE的API .jar文件.但它们本身就没用了.

但我怀疑你是否想要编写Java EE服务器,你想使用它.如果要使用服务器,则需要下载符合Java EE的服务器并使用它提供的.jar文件.

每个值得使用的IDE都以某种形式包含这些,通常是通过定义要部署的服务器. Tomcat不是一个完全的EE容器.它是一个Servlet容器,是完整EE规范的子集.

As of OSX Lion, Apple doesn’t supply a JDK anymore,它只是甲骨文,你显然已经成功获得了.

转载注明原文:在OS X Lion上安装Java EE 6 - 代码日志