[英]Java compilation/runtime classpath problems
我正在尝试构建Java SNMP客户端。 我在Ubuntu桌面上有一个名为snmpclient的文件夹。 在该文件夹中,我有主类Client.java和主类使用的snmp.jar库。
我设法在终端上使用以下命令成功编译了它:
~/Desktop$ javac snmpclient/Client.java -classpath ./snmpclient/snmp.jar
然后,我尝试使用以下命令运行它:
~/Desktop$ java snmpclient.Client -classpath ./snmpclient/snmp.jar
但是我收到“ java.lang.ClassNotFoundException”错误,说它找不到snmp库的类。 我解压缩了jar文件,以确保我正在使用的类全部存在,并且已经存在。
关于如何解决这个问题的任何想法吗?
我将这样重新排列您的参数:
~/Desktop$ java -classpath ./snmpclient/snmp.jar snmpclient.Client
这样,您的类路径就会优先运行该类。 请注意,如果您未指定-classpath
,则您的类路径默认为当前目录,因此您的完整调用应为:
~/Desktop$ java -classpath ./snmpclient/snmp.jar:. snmpclient.Client
指定类所在的根目录(即点) 以及 SNMP jar文件。
-classpath
arg由jar文件和以冒号分隔的目录路径组成。 有关设置类路径的更多信息,请参见此处 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.