Настройка maven-зависимости для SQL Server - PullRequest
121 голосов
/ 04 августа 2011

Я занимаюсь разработкой портлета, в котором у меня есть доступ Hibernate к базе данных SQL Server. Я установил для него maven зависимость и попытался найти соединитель SQL Server так же, как я знаю, что MySql его имеет.

Тем не менее мой поиск в Google выдает только Mysql, если я ищу соединитель SQL Server. Что такое правильное значение maven значение?

Ответы [ 8 ]

210 голосов
/ 08 августа 2011

Загрузите 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>
68 голосов
/ 08 января 2014

Ответ за «новый» и «крутой» Microsoft.

Да, драйвер 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 в локальный контроль версий. Не нужно, чтобы каждый разработчик вручную настраивал вещи в своих собственных репозиториях.

Я получил вдохновение от этого ответа на другой вопрос переполнения стека и Я также писал об этом здесь .

16 голосов
/ 10 апреля 2013

Существует также альтернатива: вы можете использовать драйвер jTDS с открытым исходным кодом для MS-SQL Server, который совместим, хотя не сделан Microsoft.Для этого драйвера есть артефакт maven, который вы можете использовать:

http://jtds.sourceforge.net/

From 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>
9 голосов
/ 04 августа 2011

Полагаю, вы ищете драйвер JDBC для Microsoft SQL Server: http://msdn.microsoft.com/en-us/sqlserver/aa937724

3 голосов
/ 08 мая 2015

Будьте осторожны с ответами выше.sqljdbc4.jar не распространяется под публичной лицензией, поэтому его трудно включить в jar для времени выполнения и распространения.Смотрите мой ответ ниже для более подробной информации и гораздо лучшего решения.Ваша жизнь станет намного легче, чем моя, когда я найду этот ответ.

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

2 голосов
/ 16 января 2019
<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

2 голосов
/ 17 января 2012

Даже после установки jar sqlserver мой maven пытался получить зависимость из репозитория maven.Затем я предоставил моему pom хранилище моей локальной машины, и после этого он работает нормально ... может быть кому-то поможет.

    <repository>
        <id>local</id>
        <name>local</name>
        <url>file://C:/Users/mywindows/.m2/repository</url>
    </repository>
1 голос
/ 14 ноября 2016

Похоже, что Microsoft опубликовала некоторые свои драйверы для Maven Central:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>6.1.0.jre8</version>
</dependency>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...