我正在尝试在 ubuntu 上安装 MS SQL JDBC 驱动程序以与 sqoop for Hadoop 一起使用。我对 java 和 linux 完全陌生,所以我不确定将所有内容提取到哪里。
3 回答
只需将其放在运行时类路径中或将其路径添加到运行时类路径中即可。
如何做到这一点取决于你如何执行程序。如果您java
在命令控制台中使用命令来执行.class
文件,则使用-cp
参数指定要在类路径中获取的类和/或 JAR 文件的路径。类路径基本上是绝对/相对磁盘文件系统路径的集合,Java 必须在其中查找 JAR 文件和类。
假设你已经下载了一个.zip
,你需要解压它然后寻找一个.jar
文件(通常在一个/lib
文件夹中)。对于初学者,最简单的方法是将 放在.jar
当前工作目录中,然后执行您的程序(使用该Class.forName("com.mysql.jdbc.Driver");
行),如下所示:
java -cp .:mysql.jar com.example.YourClass
.
表示当前路径,而是:
分隔符(我认为这对于 Ubuntu 是正确的,在 Windows 上是;
)。
要安装驱动程序,您可以:
- 从 Microsoft 下载驱动程序:https ://www.microsoft.com/en-us/download/details.aspx?id=11774
解压缩并解压缩它(
gzip -d sqljdbc_6.0.7507.100_enu.tar.gz
和tar -xf sqljdbc_6.0.7507.100_enu.tar
)通过将正确的版本复制到 /usr/share/java 来安装它(它需要是世界可读的。)(
sudo cp sqljdbc42.jar /usr/share/java/
)- 在 tomcat 目录中(
/usr/share/tomcat8/lib
但如果您运行的是不同的版本,它可能是 tomcat7。)运行sudo ln -s ../../java/sqljdbc42.jar sqljdbc42.jar
(使用下面的正确版本名称)。 - 如果您使用的是 Maven,请参阅为 SQL Server 设置 maven 依赖项
正确的版本如下:(在系统要求下)
- Sqljdbc.jar 要求 JRE 为 5 并支持 JDBC 3.0 API
- Sqljdbc4.jar 要求 JRE 为 6 并支持 JDBC 4.0 API
- Sqljdbc41.jar 要求 JRE 为 7 并支持 JDBC 4.1 API
- Sqljdbc42.jar 要求 JRE 为 8 并支持 JDBC 4.2 API
/usr/lib/jvm/java-8-oracle/jre/lib/ext
只需使用以下命令将您的 jdbc jar 文件放入:
sudo cp ojdbc6.jar /usr/lib/jvm/java-8-oracle/jre/lib/ext