Jboss 打包ejb3 swing客户端

Jboss 打包ejb3 swing客户端,jboss,ejb-3.0,executable-jar,Jboss,Ejb 3.0,Executable Jar,我得到了“java.lang.ClassNotFoundException:org.jnp.interfaces.NamingContextFac 运行打包的ejb3 swing客户端jar时出现“tory”错误。这是堆栈跟踪 G:\Courses\OSUMC\Installables\June 5\New>java -jar MetaDB-Client.jar javax.naming.NoInitialContextException: Cannot instantiate class

我得到了“java.lang.ClassNotFoundException:org.jnp.interfaces.NamingContextFac 运行打包的ejb3 swing客户端jar时出现“tory”错误。这是堆栈跟踪

G:\Courses\OSUMC\Installables\June 5\New>java -jar MetaDB-Client.jar
javax.naming.NoInitialContextException: Cannot instantiate class: org.jnp.interf
aces.NamingContextFactory [Root exception is java.lang.ClassNotFoundException: o
rg.jnp.interfaces.NamingContextFactory]
        at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
        at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
        at javax.naming.InitialContext.init(Unknown Source)
        at javax.naming.InitialContext.<init>(Unknown Source)
        at net.massmatrix.metadb.ui.facade.BaseEJBFacade.getInitialContext(BaseE
JBFacade.java:26)
        at net.massmatrix.metadb.ui.facade.UserManagerFacade.getUserManager(User
ManagerFacade.java:24)
        at net.massmatrix.metadb.ui.facade.UserManagerFacade.isUserNameAvailable
(UserManagerFacade.java:44)
        at net.massmatrix.metadb.ui.MainFrame.main(MainFrame.java:269)
Caused by: java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFac
tory
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at com.sun.naming.internal.VersionHelper12.loadClass(Unknown Source)
        ... 8 more
Exception in thread "main" java.lang.NullPointerException
        at net.massmatrix.metadb.ui.facade.UserManagerFacade.isUserNameAvailable
(UserManagerFacade.java:44)
        at net.massmatrix.metadb.ui.MainFrame.main(MainFrame.java:269)
以下是我的jndi.properties:-

java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost:1099
这是我的清单。MF:-

Manifest-Version: 1.0
Main-Class: net.massmatrix.metadb.ui.MainFrame
Class-Path: jbossall-client.jar
我的jar中的清单内容:-

Manifest-Version: 1.0
Created-By: 1.6.0_18 (Sun Microsystems Inc.)
Main-Class: net.massmatrix.metadb.ui.MainFrame
用于创建jar的命令:-

jar cfm MetaDB-Client.jar MANIFEST.MF net\* jndi.properties
java -jar MetaDB-Client.jar
用于运行jar的命令:-

jar cfm MetaDB-Client.jar MANIFEST.MF net\* jndi.properties
java -jar MetaDB-Client.jar
我的类路径中有jbossall-client.jar

G:\Courses\OSUMC\Installables\June 5\New>echo %CLASSPATH%
.;G:\Courses\OSUMC\WORK\Software - New\jboss-5.0.1.GA\client
我还缺什么


谢谢。

您只需将jbossall-client.jar库添加到clients lib文件夹中即可。
清单中的类路径中不能有*。

对于JAR清单类路径

嗨,我已经做了你建议的改变。然而,我仍然看到同样的错误。还有其他人猜测问题出在哪里吗?Thanks@soontobeared你能从你的罐子里发布你的清单内容吗?@soontobearded在仔细阅读了我在回答中发布的链接后,这将不起作用。将jboss Jar文件放在驱动器的classpath/lib文件夹中,然后重试。根据链接。。。注意:类路径头指向本地网络上的类或JAR文件,而不是JAR文件中的JAR文件或可通过internet协议访问的类。。。我照你的建议做了。我没有包括jbossclient jar,而是将它放在我的类路径中;但是,我仍然看到同样的错误。请查看我编辑的帖子,了解我所做的更改。谢谢