首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用OpenJDK开发JavaEE?

用OpenJDK开发JavaEE?
EN

Stack Overflow用户
提问于 2012-06-16 12:34:54
回答 2查看 20.5K关注 0票数 19

我正在开发一个JavaEE应用程序并将其部署到Glassfish 3中。我正在使用Ubuntu12.04、Eclipse for EE developers和OpenJDK -6- JDK包(Openjdk 6JDK)。到目前为止还没有问题。

问题是,无论我在哪里查找有关使用OpenJDK进行Java开发的信息,我都会发现OpenJDK就是Java,例如herehere。然而,在我的应用程序中,我经常使用javax.*,并且正在运行。

我已经下载了OpenJDK 6的源代码,并且我找到了包含许多类的文件夹/jdk/src/share/classes/javax/,但是缺少一些重要的类,比如javax.servletjavax.ejbjavax.faces

同样,除了OpenJDK之外,我没有任何其他JDK,也没有GCJ或Oracle。

我的问题是:这怎么可能呢?OpenJDK支持JavaEE API吗?是否可以使用它,或者我需要下载并安装Oracle JDK?我没听懂什么吗?

请注意,Oracle list SDK for SE和SDK for EE是不同的,所以我认为它们是不同的,对吧?

亲切的问候

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-16 12:36:38

Glassfish服务器是具体的Java EE实现。请注意,OpenJDK是一个具体的Java实现。还要注意的是,无论何时从Oracle站点download Java,基本上得到的都是Glassfish以及一堆文档和示例。

另请参阅:

票数 21
EN

Stack Overflow用户

发布于 2020-01-21 11:31:41

事实上,J2EE没有指定JVM,且Glassfish4和5都会检查Oracle JVM,且不会与任何其他JVM一起运行。

请注意,OpenJDK根本不能与Glassfish一起工作。Glassfish正在专门寻找OracleJDK。

如果您尝试在使用OpenJDK 12.0的MacOS上启动glassfish,将会发生以下情况:

代码语言:javascript
复制
bin/asadmin start-domain
Exception in thread "main" java.lang.NullPointerException
    at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.initializeServiceLocator(AbstractModulesRegistryImpl.java:152)
    at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.newServiceLocator(AbstractModulesRegistryImpl.java:144)
    at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.createServiceLocator(AbstractModulesRegistryImpl.java:218)
    at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.createServiceLocator(AbstractModulesRegistryImpl.java:224)
    at com.sun.enterprise.module.single.StaticModulesRegistry.createServiceLocator(StaticModulesRegistry.java:88)
    at com.sun.enterprise.admin.cli.CLIContainer.getServiceLocator(CLIContainer.java:217)
    at com.sun.enterprise.admin.cli.CLIContainer.getLocalCommand(CLIContainer.java:255)
    at com.sun.enterprise.admin.cli.CLICommand.getCommand(CLICommand.java:231)
    at com.sun.enterprise.admin.cli.AdminMain.executeCommand(AdminMain.java:371)
    at com.sun.enterprise.admin.cli.AdminMain.doMain(AdminMain.java:306)
    at org.glassfish.admin.cli.AsadminMain.main(AsadminMain.java:57)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11060856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档