问题如下:
我一直在"错误:无法找到或加载主类TelnetClientExample.class"尝试从cmd运行已编译的.class文件时出现错误信息。
C:\Users\IB>java -cp C:\Users\IB\Documents\NetBeansProjects\TelnetClientExample\build\classes TelnetClientExample 192.168.0.13 23
在NetBeans中它运行良好(当然是将arms从args更改为stdin中的变量),但在cmd中我无法运行它。
代码是来自:http://www.java2s.com/Code/Java/Network-Protocol/ExampleofuseofTelnetClient.htm的复制粘贴(包名称除外,#34; telnetclientexample"在我的项目中)。
答案 0 :(得分:2)
看起来你有一个CLASSPATH问题,netbeans可能正在使用不同的类路径,检查类的位置并将其添加到类路径中。或者你可以将项目编译成一个jar并将依赖项放在里面。
如果这没有帮助,可能路径本身是错误的,检查包名称,它们需要在java命令上完成
答案 1 :(得分:0)
如果该类位于包telnetclientexample
中,则其名称为
telnetclientexample.TelnetClientExample
然后你必须使用
java -cp C:\Users\IB\Documents\NetBeansProjects\TelnetClientExample\build\classes telnetclientexample.TelnetClientExample 192.168.0.13 23
答案 2 :(得分:0)
我认为在您的TelnetClientExample.java文件中,您的类标识符(类名)与您的文件名不同...请考虑以下程序:
class hello{
public static void main(String args[])
{
System.out.print("HI");
}
}}
这里假设我将此文件保存为 Hello.java ,并且在编译时它编译得很好,但是会出现与您在问题中提到的相同的错误:
G:\ ZPREP> javac Hello.java
G:\ ZPREP> java Hello 错误:无法找到或加载主类Hello
G:\ ZPREP>
这是因为我正在保存文件名,名称为“Hello”,类名为“hello”,因为java区分大小写,它认为“H”和“h”不同,所以我认为在编译后你的情况<生成strong> TelnetClientExample.class 没有错误,但可能是您保存的文件名不同...