我一直在用 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”,例如当我输入命令时,我可以使用 Tab 键来标记它,所以我希望它能够工作。
我的最终目标是将类路径指向 JDBC 驱动程序。
我哪里出错了?
最佳答案
java -cp /home/pi/code/java/eclipse/bin Controller
如果您的 Controller
类位于默认包中,这将是正确的方法。
如果您尝试将您的类引用为 eclipse.bin.Controller
,Java 运行时将在包 eclipse.bin< 中查找
和包不是目录。Controller
类
关于Java,基本类路径问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17053053/