我一直在用Java编写简单的程序,但似乎遇到了涉及类路径的问题。
我编译的类文件存在于目录:/home/pi/code/java/eclipse/bin/
在此目录中,我可以运行“java Controller”,程序将运行。
尝试使用类路径,我尝试了以下操作:"java -cp /home/pi/code/java/ eclipse.bin.Controller"
但我得到以下例外:
"Exception in thread "main" java.lang.NoClassDefFoundError: eclipse/bin/Controller (wrong name: Controller)
"
最奇怪的是,Java甚至构建了最后一部分"eclipse.bin.Controller"
,例如我在键入命令时可以选中它,所以我希望这可以工作。
我的最终目标是将类路径指向JDBC驱动程序。
我哪里错了?
答案 0 :(得分:1)
java -cp /home/pi/code/java/eclipse/bin Controller
如果您的默认包中有Controller
类,那将是正确的方法。
如果您尝试将您的类称为eclipse.bin.Controller
,Java运行时将在包Controller
中查找eclipse.bin
类,而包不是目录。