java - 无法找到或加载主类 - 通过命令提示符运行时出错

标签 java classpath javac

我知道之前发布过类似的问题,我也经历过这些问题,但它仍然不适合我。

我正在创建一个示例 JMS 测试类(聊天应用程序)并使用 javaee.jar 和 javax.jms.jar。我可以通过 Eclipse IDE 测试它,并且运行良好。但我尝试通过命令提示符运行,以便可以运行多个窗口。我设法编译 Chat.java 文件并创建 Chat.class。但是当我尝试运行它时,我得到无法找到或加载主类。这些是我使用的命令:

src/domain文件夹:

javac -classpath javaee.jar;javax.jms.jar Chat.java----这在域文件夹中创建了Chat.Class,其中domain是包名称

我从 src 文件夹运行以下命令

java -classpath javaee.jar;javax.jms.jar domain.Chat ---- 这给了我无法找到或加载主类domain.Chat错误信息

但是当我在没有 -classpath 参数(java domain.Chat)的情况下运行时,它会读取 main() 并给出不同的错误,因为它找不到 jms jar 文件。

E:\eclipse\Spring\JMSChat\src>java 域.Chat 线程“main”中的异常 java.lang.NoClassDefFoundError: javax/jms/MessageList 能量

所以基本上,当我不传入类路径参数时,它会找到 Chat.class 文件,而当我使用类路径添加 jar 时,它找不到该类。我尝试从域文件夹和 src 文件夹中运行它,但没有成功。知道我做错了什么吗?

提前致谢。

最佳答案

试试这个

java -classpath javaee.jar;javax.jms.jar;. domain.Chat

默认情况下,java 使用类路径中的当前目录。当您使用 -cp 标志时,它不会,因此找不到 domain.Chat 的路径。

关于java - 无法找到或加载主类 - 通过命令提示符运行时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18795601/

相关文章:

java - 从一组元素中选择,所有满足条件的元素

java - "from unexpected"createQuery时

java - java 9下运行时添加jar到classpath

java - 即使类位于同一文件夹中,也出现 NoClassDefFoundError

java - tomcat7-maven-plugin tomcat7 :run java. lang.LinkageError 先前启动加载不同类型的名称

javac:包 org.apache.derby.client.am 不存在

javac:找不到文件(cygwin 错误)

java - 无法允许用户退出

eclipse - Eclipse 编译器或 javac 中的错误?

java - 在 Visual Studio Code 中导入 .jar,类路径