Настройка зависимости maven для SQL Server
Я разрабатываю портлет, где у меня есть Hibernate доступ к базе данных SQL Server. Я установил для него зависимостей maven и попытался найти разъем SQL Server так же, как я знаю, что у MySql есть.
По-прежнему мой поиск Google дает только Mysql, если я ищу соединитель SQL Server. Какова правильная зависимость maven?
Ответы
Ответ 1
Загрузите JAR драйвера из ссылки, предоставленной Olaf, и добавьте ее в локальный репозиторий 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>
Ответ 2
Ответьте за "новый" и "крутой" Microsoft.
Yay, драйвер SQL Server теперь под лицензией MIT на
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
Ответ для "старого" Microsoft:
Для моего варианта использования (интеграционное тестирование) было достаточно использовать системную область для зависимости драйвера 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 в локальный контроль версий. Не нужно, чтобы каждый разработчик вручную настраивал вещи в своих собственных репозиториях.
Я получил вдохновение от этого ответа на другой вопрос, и я также написал об этом здесь.
Ответ 3
Существует также альтернатива: вы можете использовать драйвер jTDS с открытым исходным кодом для MS-SQL Server, совместимый, хотя и не выполненный Microsoft.
Для этого драйвера существует артефакт 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>
UPDATE нов 2016, Microsoft теперь опубликовала свой драйвер MSSQL JDBC в github, а также теперь доступен на maven
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
Ответ 4
Я считаю, что вы ищете драйвер JDBC для Microsoft SQL Server: http://msdn.microsoft.com/en-us/sqlserver/aa937724
Ответ 5
Будьте осторожны с ответами выше. sqljdbc4.jar не распространяется по открытой лицензии, поэтому его сложно включить в банку для выполнения и распространения. См. Мой ответ ниже для получения более подробной информации и гораздо лучшего решения. Ваша жизнь станет намного легче, чем моя, как только я нашел этот ответ.
fooobar.com/questions/51600/...
Ответ 6
Даже после установки sqlserver jar мой maven пытался извлечь зависимое из maven-репозитория. Затем я предоставил свой pom хранилище моей локальной машины, и он отлично работает после этого... может помочь кому-то.
<repository>
<id>local</id>
<name>local</name>
<url>file://C:/Users/mywindows/.m2/repository</url>
</repository>
Ответ 7
Похоже, что Microsoft опубликовала некоторые свои драйверы для центрального центра:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
Ответ 8
<dependency>
<groupId>com.hynnet</groupId>
<artifactId>sqljdbc4-chs</artifactId>
<version>4.0.2206.100</version>
</dependency>
Это сработало для меня (если вы используете Maven)
https://search.maven.org/artifact/com.hynnet/sqljdbc4-chs/4.0.2206.100/jar