【问题标题】:Standalone java Glasshfish client. Reference to gf-client.jar独立的 Java Glasshfish 客户端。参考 gf-client.jar
【发布时间】:2012-07-11 15:24:50
【问题描述】:
我正在部署一个使用 EJB 的应用程序。我已经编写了一个 EJB 和一个 Java 独立客户端来连接。一切正常。
但是,我对 JAR 依赖项有疑问。我正在使用 Netbeans 7.1.2 和 Glassfish 3.1.2,我添加到客户端应用程序的罐子是:
- appserv-rt.jar
- javaee.jar
- gf-client.jar
我从这里读到:http://glassfish.java.net/javaee5/ejb/EJB_FAQ.html#StandaloneRemoteEJB,比 gf-client.jar 本身拥有很多依赖项。查看其中的 MANIFEST 文件后,我看到它提供了很多其他 jar 的亲属路径,然后,我必须直接在 glassfish 安装路径中引用这个 jar。如果我想将此应用程序分发给客户端,这是不可接受的,所有使用该应用程序(客户端)的客户端都需要下载 Glassfish?
所以我的问题是,我该如何处理?有没有办法避免直接从 glassfish 安装路径引用 gf-client.jar?
【问题讨论】:
标签:
java
netbeans
glassfish
ejb
【解决方案1】:
谢谢,
我通过将这些 jars 添加到我的项目中解决了我的问题:
auto-depends.jar
部署-common.jar
glassfish-corba-internal-api.jar
internal-api.jar
管理-api.jar
bean-validator.jar
dol.jar
glassfish-corba-newtimer.jar
javax.ejb.jar
orb-connector.jar
common-util.jar
ejb-container.jar
glassfish-corba-omgapi.jar
javax.jms.jar
orb-iiop.jar
配置-api.jar
ejb.security.jar
glassfish-corba-orb.jar
javax.resource.jar
安全.jar
配置类型.jar
glassfish-api.jar
glassfish-corba-orbgeneric.jar
javax.servlet.jar
ssl-impl.jar
config.jar
glassfish-corba-asm.jar
glassfish-naming.jar
javax.transaction.jar
交易内部 api.jar
连接器内部 api.jar
glassfish-corba-codegen.jar
gmbal.jar
jta.jar
容器-common.jar
glassfish-corba-csiv2-idl.jar
hk2-core.jar
内核.jar
我认为在某些情况下不需要所有的罐子。希望它会有所帮助。
【解决方案2】:
在Application Development Guide 中找到这个:
将 as-install/lib/gf-client.jar 文件复制到客户端计算机,并将其包含在客户端的类路径中。
gf-client.jar 文件在其文件中引用 GlassFish Server JAR 文件
MANIFEST.MF 文件。如果客户端计算机上没有安装 GlassFish Server,您还必须将 as-install/modules 目录复制到客户端计算机并保持其相对于
as-install /lib/gf-client.jar 文件。或者您可以使用 package-appclient
脚本;请参阅使用 package-appclient 脚本。