SQL ServerデータベースにHibernateアクセスできるポートレットを開発しています。私はmaven依存関係を設定し、MySqlが持っているのと同じ方法でSQL Serverコネクタを見つけようとします。
それでも、SQL Serverコネクタを検索する場合、Google検索ではMysqlのみが表示されます。正しいMaven依存関係値とは何ですか?
Olafが提供するリンクからドライバーJARをダウンロードし、 ローカルMavenリポジトリーに追加 with;
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>
はい、SQL ServerドライバーはMITライセンスで有効になりました
<dependency>
<groupId>com.Microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
私のユースケース(統合テスト)では、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ドライバーをローカルバージョン管理に入れることができます。各開発者が独自のリポジトリに手動で設定する必要はありません。
別のStack Overflowの質問に対するこの回答 および ここでもブログに書いています からインスピレーションを得ました。
別の方法もあります。MS-SQLServer用のオープンソースjTDSドライバーを使用できます。これは、Microsoft製ではありませんが互換性があります。そのドライバーには、使用できるMavenアーティファクトがあります。
http://mvnrepository.com/artifact/net.sourceforge.jtds/jtds から:
<dependency>
<groupId>net.sourceforge.jtds</groupId>
<artifactId>jtds</artifactId>
<version>1.3.1</version>
</dependency>
UPDATE2016年11月、MicrosoftはMSSQL JDBCドライバーを公開しました githubで そしてmavenでも利用可能になりました:
<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に含めるのは困難です。詳細とはるかに優れたソリューションについては、以下の回答を参照してください。私がこの答えを見つけたら、私のようにあなたの人生はずっと楽になります。
<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
Sqlserver jarをインストールした後でも、私のMavenはMavenリポジトリーから依存関係を取得しようとしていました。次に、pomにローカルマシンのリポジトリを提供しましたが、その後は正常に動作します...誰かの助けになるかもしれません。
<repository>
<id>local</id>
<name>local</name>
<url>file://C:/Users/mywindows/.m2/repository</url>
</repository>
Microsoftは、いくつかのドライバーをMaven Centralに公開しているようです。
<dependency>
<groupId>com.Microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>