我正在尝试创建一个java程序来查找用户的ip地址。 prgram编译得很好,我的问题是,当我尝试使用java
命令运行它时,我得到一个错误,说它无法找到或加载类文件。我发现它正在改变任何' /'到了'。我试过了:
java /home/pi/Desktop/ip.class
然后它返回:
错误:无法找到或加载主类.home.pi.Desktop.ip.class
将转义字符\
添加到所有/
前面没有任何效果。
同样的事情发生在我试过的任何路径上,我怎样才能得到java
程序来接收/而不是。 ?
答案 0 :(得分:4)
如果希望java
运行特定的类,则传递类名,而不是包含该类的文件的位置。
如果.class
文件不在当前工作目录中,则需要指定classpath参数(-cp
)。类似的东西:
java -cp <location of the class> <fully-qualified name of the class>
在您的情况下,可能是:
java -cp /home/pi/Desktop ip
但您可能需要使用声明的包来限定ip
类名称,例如
package my.package;
class ip {}
需要
java -cp /home/pi/Desktop my.package.ip