我正在尝试在我的POM.xml文件中添加MS驱动程序依赖项,下面是依赖项。
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0</version>
</dependency>
但是我得到了一个例外
缺少工件com.microsoft.sql服务器:sqljdbc4:jar:4.0
我真的不明白这个问题。
发布于 2013-10-23 17:22:54
更新
Microsoft现在在maven central中提供此构件。有关详细信息,请参阅@nirmal的答案:https://stackoverflow.com/a/41149866/1570834
原始答案
问题是Maven在任何已配置的maven repositories中都找不到这个工件。
不幸的是,Microsoft没有通过任何maven存储库提供此工件。您需要从Microsoft website下载jar,然后手动将其安装到本地maven存储库中。
您可以使用以下maven命令执行此操作:
mvn install:install-file -Dfile=sqljdbc4.jar -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=4.0 -Dpackaging=jar
然后,下次在POM上运行maven时,它会找到工件。
发布于 2016-12-15 02:43:09
微软最近发布了open sourced their jdbc driver。
您现在可以在maven central上找到驱动程序:
<!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
或者对于java 7:
<!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre7</version>
</dependency>
发布于 2015-05-08 05:26:33
上面的答案只将sqljdbc4.jar添加到本地存储库。因此,当创建用于分发的最终项目jar时,sqljdbc4将再次丢失,正如@Tony关于运行时错误的评论中所指出的那样。
Microsoft (以及Oracle和其他第三方提供商)根据ENU/EULA限制其软件的分发。因此,这些软件模块不会添加到Maven生产的jars中进行分发。有一些技巧可以绕过它(例如在运行时提供第三方jar文件的位置),但作为开发人员,您必须小心违反许可。
GNU连接器/驱动程序的一个更好的方法是使用 ,它与大多数数据库管理系统兼容,更可靠,更快(根据基准测试),并且是在许可下分发的。这将使你的生活更容易使用它,而不是试图按照上述任何其他技术将方形钉子敲入圆孔。
https://stackoverflow.com/questions/19537396
复制相似问题