0

今天我尝试通过命令提示符编译我的源代码:

PS ...\JavaDev\Prog> javac -classpath <libs> -d . -sourcepath src src/com/negi/prog/Prog.java

他们编译成功。

但是当我尝试运行它时,它会产生一个错误:

PS ...\JavaDev\Prog> java -classpath com.negi.prog.Prog

线程“主”java.lang.NoClassDefFoundError 中的异常:com/negi/prog/Prog
引起:java.lang.ClassNotFoundException:com.negi.prog.Prog

我该如何解决?

4

3 回答 3

2

您的课程-classpath必须由:

PS ...\JavaDev\Prog> java -classpath "<libs>:com.negi.prog.Prog"

为了完成答案,不同的操作系统有不同的类路径分隔符。java.class.path您可以通过检索属性的值来检查分隔符。

于 2013-06-30T20:48:57.747 回答
2

默认 。(当前路径)包含在类路径中,但如果您指定 -classpath 或 -cp,则会被覆盖。包括 。在你的类路径中:

java -classpath <libs>:. com.negi.prog.Prog
于 2013-06-30T20:53:58.153 回答
1

运行 ie 时需要确保当前目录在类路径中

PS ...\JavaDev\Prog> java -classpath <libs>:. com.negi.prog.Prog
于 2013-06-30T20:53:50.897 回答