java - 在命令行上运行 java 时显示错误消息“java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver”
问题描述
我正在尝试在命令行上运行 java 程序,但显示此消息:
java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver
然后我搜索了几个小时,大多数解决方案都是关于检查
- Java版,
- 导入 JDBC jar 和
- 编辑类路径
对于 1,我检查了我使用的 java 版本是 1.8
所以对于 2,我下载了 sqljdbc41.jar ,将 jar 放入 lib 文件夹,然后运行命令:
java -cp C://Testing/lib/* -classpath . sampleJava
对于 3,我已将类路径编辑为 C://Testing/lib/sqljdbc41.jar
任何人都知道我错过了什么,所以仍然显示相同的错误消息吗?
下面是我运行的示例程序:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.Map;
public class sampleJava {
int x = 5;
public static void main(String[] args) {
sampleJava myObj = new sampleJava();
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
}
catch (Exception e) {
System.err.println("Got an exception! ");
System.err.println(e.getMessage());
System.err.println(e);
System.out.println(e.toString());
e.printStackTrace();
}
finally {
System.out.println("Done");
}
System.out.println(myObj.x);
}
}
解决方案
这应该有帮助
java -cp C:/Testing/lib/*; sampleJava
或者
java -cp C:/Testing/lib/sqljdbc41.jar; sampleJava
推荐阅读
- java - Jax-Rs:使用 BeanParam 将 json 输入映射到 bean 不起作用
- node.js - 有没有办法从nodejs运行elasticsearch
- c++ - c++地图类的价值
- mysql - 触发器未在 MySQL 中触发
- python - 一维数组和二维数组之间的numpy元素明智乘法背后的逻辑
- python - 我如何知道哪个基类将特定属性添加到子类对象
- javascript - Chrome 41 解析 JSON 对象令牌错误
- php - 如何使用 fpdf 在所有页面中设置表头?
- javascript - JSplumb 连接到多个端点
- azure - 如何在 Azure 中找到 billingAccountId