设置SQL Server的Maven依赖关系

我正在开发一个portlet,让Hibernate能够访问SQL Server数据库。 我为它设置了Maven依赖关系 ,并试图findSQL Server连接器,就像我知道MySql拥有它一样。

如果我searchSQL Server连接器,我的Googlesearch仍然只提供Mysql。 什么是正确的maven依赖项值?

从Olaf提供的链接下载驱动程序JAR, 并将其添加到本地Maven存储库 ;

mvn install:install-file -Dfile=sqljdbc4.jar -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=4.0 -Dpackaging=jar

然后将其添加到您的项目;

 <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>sqljdbc4</artifactId> <version>4.0</version> </dependency> 

回答“新”和“酷”微软。

是的,现在在MIT许可证下的SQL Server驱动程序

  • GitHub: https : //github.com/Microsoft/mssql-jdbc
  • Maven Central: http : //search.maven.org/#search%7Cga%7C1%7Cmssql-jdbc
 <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>6.1.0.jre8</version> </dependency> 

回答“老”微软:

对于我的用例(集成testing),使用JDBC驱动程序的依赖关系的系统范围就足够了:

 <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>sqljdbc4</artifactId> <version>3.0</version> <scope>system</scope> <systemPath>${basedir}/lib/sqljdbc4.jar</systemPath> <optional>true</optional> </dependency> 

这样,我可以将JDBC驱动程序放入本地版本控制。 没有必要让每个开发人员手动设置自己的仓库中的东西。

我从这个答案从另一个堆栈溢出问题的灵感, 我也在这里博客 。

还有一个select:你可以使用MS-SQL Server的开源jTDS驱动程序,虽然不是由微软公司生产的,但它兼容。 对于那个驱动程序,你可以使用一个maven工件:

http://jtds.sourceforge.net/

http://mvnrepository.com/artifact/net.sourceforge.jtds/jtds

 <dependency> <groupId>net.sourceforge.jtds</groupId> <artifactId>jtds</artifactId> <version>1.3.1</version> </dependency> 

更新 2016年11月,微软现在在github上发布了它的MSSQL JDBC驱动程序,现在也可以在maven上find它:

 <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>6.1.0.jre8</version> </dependency> 

我相信你正在寻找Microsoft SQL Server JDBC驱动程序: http : //msdn.microsoft.com/en-us/sqlserver/aa937724

注意上面的答案。 sqljdbc4.jar没有在公共许可证下分发,这就是为什么很难将它包含在运行时和分发的jar文件中。 看到我的答案更多的细节和更好的解决scheme。 一旦我find答案,你的生活将变得更加容易。

https://stackoverflow.com/a/30111956/3368958

即使在安装sqlserver jar之后,我的maven也试图从maven仓库获取依赖关系。 然后,我提供了我的本地存储库,我的本地机器,它工作正常后… …可能是对某人的帮助。

  <repository> <id>local</id> <name>local</name> <url>file://C:/Users/mywindows/.m2/repository</url> </repository> 

它看起来像微软公布了一些他们的驱动程序,以maven中央:

 <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>6.1.0.jre8</version> </dependency>