JDBC创建数据库报错:找不到或无法加载主类Create_DB求解决方案
问题解决方案
1. 修正JDBC Driver类的全限定名
你代码里的Class.forName("com.mysql.cj.jdbc.admin.Driver");是错误的,MySQL JDBC Driver的正确全限定名是com.mysql.cj.jdbc.Driver,修改这一行代码:
Class.forName("com.mysql.cj.jdbc.Driver");
2. 按包结构正确编译和运行类
报错提示wrong name: com/mysql/cj/jdbc/admin/Create_DB,核心问题是你没有遵循Java包结构的编译运行规则:
- 编译操作:在存放
Create_DB.java的目录下,执行命令生成对应包结构的class文件:
执行后会自动生成javac -d . Create_DB.javacom/mysql/cj/jdbc/admin目录,Create_DB.class文件会被放在这个目录里。 - 运行操作:回到包结构的根目录(也就是
com目录的上级目录),使用完整的包名+类名启动程序:java com.mysql.cj.jdbc.admin.Create_DB
3. 确保JDBC驱动在类路径中
编译和运行时都需要将MySQL JDBC驱动jar包加入类路径:
- 编译时命令:
javac -cp mysql-connector-java-8.0.x.jar -d . Create_DB.java - 运行时命令(Windows用
;分隔类路径,Linux/macOS用:):# Windows系统 java -cp .;mysql-connector-java-8.0.x.jar com.mysql.cj.jdbc.admin.Create_DB # Linux/macOS系统 java -cp .:mysql-connector-java-8.0.x.jar com.mysql.cj.jdbc.admin.Create_DB
内容的提问来源于stack exchange,提问作者Bhuvan Gundu
相关产品推荐
相关产品推荐

