Java glassfish5的Eclipse支持

Java glassfish5的Eclipse支持,java,eclipse,jakarta-ee,payara,glassfish-5,Java,Eclipse,Jakarta Ee,Payara,Glassfish 5,有人知道在不久的将来Eclipse中是否会支持GlassFish 5(GlassFish工具支持3.1和4.x)吗 除了Glassfish工具之外,还有其他方法可以在Eclipse中集成Glassfish吗?不幸的是,目前还没有支持,但是您可以构建JavaEE应用程序(EAR,WAR),获取.WAR | EAR文件并将其粘贴到Eclipse中 [GF_LOCATION]\glassfish5\glassfish\domains\[DOMAIN]\autodeploy\ 然后转到[GF\u位置]

有人知道在不久的将来Eclipse中是否会支持GlassFish 5(GlassFish工具支持3.1和4.x)吗


除了Glassfish工具之外,还有其他方法可以在Eclipse中集成Glassfish吗?

不幸的是,目前还没有支持,但是您可以构建JavaEE应用程序(EAR,WAR),获取
.WAR | EAR
文件并将其粘贴到Eclipse中

[GF_LOCATION]\glassfish5\glassfish\domains\[DOMAIN]\autodeploy\
然后转到
[GF\u位置]\glassfish5\bin\

打开终端并运行:

asadmin start-domain [DOMAIN]
如果您正确配置了应用程序,您应该能够在本地访问应用程序,例如:

localhost:8080/YourApp/
如果您需要
数据源
连接池
,请从bin运行:

asadmin add-resources [location_to_you_app's_glassfish-resources.xml]
这将添加GF5中运行应用程序所需的配置

可供替代的
使用Netbeans,我已经能够在Netbeans中配置GlassFish5。不幸的是,当前版本8.2还没有JavaEE 8检测和自动文件完成功能,因此如果您计划使用
JSF 2.3、Servlet 4.0等,则必须手动添加此配置…
,但至少您能够在Glassfish 5上从IDE配置并运行应用程序。

Glassfish工具只需检查以下版本:

Version version = getVersion();

if (!version.matches("[3.1-5)")) {
    return new Status(Status.ERROR, GlassfishToolsPlugin.SYMBOLIC_NAME, Messages.unsupportedVersion);
}
Bundle-Name: Public APIs of Glassfish
Bundle-Version: 5.181.0.Alpha4-SNAPSHOT
Created-By: Apache Maven Bundle Plugin
Build-Jdk: 1.8.0_144
其中
getVersion()
可通过阅读
[install dir]/glassfish/modules/glassfish-api.jar获得!META-INF/MANIFEST.MF
,然后是
捆绑版本
条目

因此,让Eclipse使用GlassFish 5和Payara 5的一种简单方法是:

  • cd[安装目录]/glassfish/模块/
  • mkdir META-INF
  • 解压-p glassfish-api.jar META-INF/MANIFEST.MF>META-INF/MANIFEST.MF
  • vim META-INF/MANIFEST.MF
  • 将捆绑包版本更改为以
    4
    开头,并确保所有数字都是单数(即181应该变成0左右)
  • zip-u glassfish-api.jar META-INF/MANIFEST.MF
  • 现在,您可以像平常一样为GlassFish 5和Payara 5添加运行时和服务器,并启动、调试、部署等

    如图所示,要更改的条目如下所示:

    Version version = getVersion();
    
    if (!version.matches("[3.1-5)")) {
        return new Status(Status.ERROR, GlassfishToolsPlugin.SYMBOLIC_NAME, Messages.unsupportedVersion);
    }
    
    Bundle-Name: Public APIs of Glassfish
    Bundle-Version: 5.181.0.Alpha4-SNAPSHOT
    Created-By: Apache Maven Bundle Plugin
    Build-Jdk: 1.8.0_144
    
    应成为:

    Bundle-Name: Public APIs of Glassfish
    Bundle-Version: 4.0.0.Alpha4-SNAPSHOT
    Created-By: Apache Maven Bundle Plugin
    Build-Jdk: 1.8.0_144
    

    GlassFish工具目前正在计划捐赠给Eclipse,因此可能需要一段时间才能更新。同时,我计划不久后创建一个带有一些额外增强功能的衍生版本,但这也可能需要一些时间。

    通过Oracle“GlassFish工具”将Payar5与Eclipse 4.7.1a集成我希望在\payara5\glassfish\modules\glassfish-api.jar文件中修改内容末尾的META-INF\MANIFEST.MF文件,如下所示:

    Version version = getVersion();
    
    if (!version.matches("[3.1-5)")) {
        return new Status(Status.ERROR, GlassfishToolsPlugin.SYMBOLIC_NAME, Messages.unsupportedVersion);
    }
    
    Bundle-Name: Public APIs of Glassfish
    Bundle-Version: 5.181.0.Alpha4-SNAPSHOT
    Created-By: Apache Maven Bundle Plugin
    Build-Jdk: 1.8.0_144
    
    。。。;version=“4.0.0” 捆绑名称:玻璃鱼公共API 捆绑包版本:4.0 创建人:ApacheMaven Bundle插件 构建Jdk:1.8.0_152

    Eclipse Oxygen.3a(4.7.3a)现在支持Glassfish 5


    对于Eclipse光子用户,请查看我的问题和选择的答案

    有趣的细节:Java EE 8-“First Cup InProduction”推荐Glassfish5和NetBeans>=8.2或Eclipse Oxygen(4.7)并介绍了在NetBeans中集成Glassfish5的方法:有趣的方法-今晚我将尝试一下。我尝试了这个方法,它允许您在eclipse上安装Glassfish5。唯一的问题是无法连接Java9JDK。谢谢Arjan,因为它让我可以使用GF5在eclipse中工作