我讨厌用这个开始一个帖子,但我是 Java 新手……我已经按照本教程创建了一个套接字服务器(在 Eclipse 中挖掘)。我可以在 Eclipse 中运行服务器,一切都很好。但是当我尝试导出项目时,我不知道如何运行它。我不断收到此错误(取决于我的运行方式)
Exception in thread "main" java.lang.NoClassDefFoundError: xsocketserver/Main
Caused by: java.lang.ClassNotFoundException: xsocketserver.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:315)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:330)
at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398)
我读过这个问题与设置的类路径有关。我尝试了以下方法:
java -cp libs/xSocket-2.8.12.jar xsocketserver.Main
java -jar xSocketServer.jar
java -classpath xSocketServer:xSocketServer/libs/xSocket-2.8.12.jar xsocketserver.Main
加上许多其他人。JAR 中的文件结构如下:
xSocketServer.jar
-> xsocketserver
-> Main.class
-> xSocketDataHandler.class
-> META-INF
-> MANIFEST.MF
-> libs
-> xSocket-2.8.12.jar
顺便说一句,我尝试添加自己的清单文件,其中包含Class-Path
但当我检查它时,它总是显示:
Manifest-Version: 1.0
Main-Class: xsocketserver.Main
根据我在 Google 中看到的点击次数,我猜这是一个常见问题,但我无法理解我做错了什么。可能是错误的导出设置??