[英]Error - Could not find or load main class
我想连接我的java程序以连接数据库并检索数据。 它的编译完美,但运行时我收到此Error : Could not find or load main class
我已经安装了 Java SQL 驱动程序并将 jar 路径添加到环境变量中作为 CLASSPATH
import java.sql.*;
public class Java2Sql{
public static void main(String args[]){
String url = "jdbc:mysql://localhost:80/";
String dbName = "test";
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String password = "root";
try{
Class.forName(driver).newInstance();
Connection conn = DriverManager.getConnection(url+dbName,userName,password);
Statement stmt = conn.createStatement();
String strsql = "SELECT * FROM student";
ResultSet res = stmt.executeQuery(strsql);
while(res.next()){
System.out.println("ID :"+res.getString(1));
System.out.println("Name :"+res.getString(2));
System.out.println("Tel :"+res.getString(3));
System.out.println("City :"+res.getString(4));
}
res.close();
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
假设您的Java2Sql
在test
包中。
您尝试运行的代码如下。
package test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Java2Sql {
public static void main(String args[]) {
Connection connection = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test", "username", "pwd"); // Test DB
System.out.println("Connected.");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
您需要编译和运行的命令是:
javac Java2Sql.java
java -classpath .;test/mysql-connector-java-5.0.4-bin.jar test.Java2Sql
清单 Main-class 条目中命名的类在您的 JAR 文件中不存在,或者清单中可能没有 Main-class: 条目。
大约七年来,您不需要调用 Class.forName(),之后需要渲染以调用 newInstance()。
mysql 连接的默认端口是 3306。所以改变这一行
String url = "jdbc:mysql://localhost:80/";
对此:
String url = "jdbc:mysql://localhost:3306/";
你应该从这里下载驱动程序
和 JAR 文件需要添加到项目类路径中。
首先右键单击您的 Eclipse 项目,项目 --> 构建路径 --> 配置构建路径。 在 Libraries 选项卡下,单击 Add Jars 或“Add External JARs”并添加下载的 jar
不是 100% 确定,但看起来您使用了错误的端口号 80。通过以下语句确保您的 MySQL 端口号是最新的
SHOW VARIABLES WHERE Variable_name = 'port';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.