Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法找到或加载主类-通过命令提示符运行时出错_Java_Classpath_Javac - Fatal编程技术网

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

Java 无法找到或加载主类-通过命令提示符运行时出错,java,classpath,javac,Java,Classpath,Javac,我知道以前也有类似的问题贴出来,我也看了一遍,但仍然不适合我 我正在创建一个示例JMS测试类(聊天应用程序),并使用javaee.jar和javax.JMS.jar。我可以通过EclipseIDE对其进行测试,并且效果良好。但是我试图通过命令提示符运行,这样我就可以运行多个窗口了。我设法编译了Chat.java文件,它创建了Chat.class。但当我尝试运行它时,我发现无法找到或加载主类。以下是我使用的命令: 从src/domain文件夹: javac-classpath javaee.jar

我知道以前也有类似的问题贴出来,我也看了一遍,但仍然不适合我

我正在创建一个示例JMS测试类(聊天应用程序),并使用javaee.jar和javax.JMS.jar。我可以通过EclipseIDE对其进行测试,并且效果良好。但是我试图通过命令提示符运行,这样我就可以运行多个窗口了。我设法编译了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
——这给了我
无法找到或加载主类域的错误消息。Chat
错误消息

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

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

因此,基本上,当我没有传入classpath参数时,它会找到
Chat.class
文件,而当我使用classpath添加jar时,它无法找到类。我试着从域文件夹和src文件夹中运行它,但没有成功。知道我做错了什么吗

提前谢谢。

试试这个

java -classpath javaee.jar;javax.jms.jar;. domain.Chat
默认情况下,
java
使用类路径中的当前目录。当您使用
-cp
标志时,它不会这样做,因此找不到
域.Chat
的路径。

试试这个

java -classpath javaee.jar;javax.jms.jar;. domain.Chat
默认情况下,
java
使用类路径中的当前目录。当您使用
-cp
标志时,不会找到
域.Chat
的路径。

1)您可以从Eclipse运行应用程序的多个实例,您可以通过单击控制台图标旁边的箭头在分配的控制台中循环来检查其输出

2) 尝试从源文件夹
java-classpath运行。;javaee.jar;javax.jms.jar domain.Chat
“.”表示当前目录

1)您可以从Eclipse运行应用程序的多个实例,您可以通过单击控制台图标旁边的箭头在分配的控制台中循环来检查它们的输出


2) 尝试从源文件夹
java-classpath运行。;javaee.jar;javax.jms.jar domain.Chat
“”表示当前目录

已尝试将
添加到类路径,即
-classpath。;javaee.jar;javax.jms.jar
?@MadProgrammer。现在它拾取类文件,但仍然抛出NoClassdefFoundError:javax/jms/MessageListenerJAR在哪里?尝试在类路径中为它们添加拉路径…@MadProgrammer-Ok,所以现在我将2个jar文件(javaee.jar和jms.jar)放在src文件夹及其工作目录下。谢谢。我不确定这是个好主意,但至少你已经朝着正确的方向前进了……你已经尝试过将
添加到类路径,即
-classpath。;javaee.jar;javax.jms.jar
?@MadProgrammer。现在它拾取类文件,但仍然抛出NoClassdefFoundError:javax/jms/MessageListenerJAR在哪里?尝试在类路径中为它们添加拉路径…@MadProgrammer-Ok,所以现在我将2个jar文件(javaee.jar和jms.jar)放在src文件夹及其工作目录下。谢谢。我不确定这是个好主意,但你至少朝着正确的方向前进了。。。