質問

単純なgroovyスクリプトをDBに接続しようとしています。

コード:

import groovy.sql.Sql
class GroovySqlExample2{
  static void main(String[] args) {
    def sql = Sql.newInstance("jdbc:sqlserver://MYSERVERIP", "uname",
           "pwd", "net.sourceforge.jtds.jdbc.Driver")
    sql.eachRow("select * from word"){ 
      println it.spelling + " ${it.part_of_speech}"
    }
  }
}

C:\ groovy-1.6.3 \ libフォルダー内にjtds-1.2.3.jarを配置しましたが、上記のコードは文句を言い続けます:

java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver
役に立ちましたか?

解決

c:\ groovy-1.6.3に設定されたGROOVY_HOME環境変数があることを確認します

他のヒント

Grapeを使用して systemClassLoader = true

を設定します
@Grapes(
    @Grab(group='net.sourceforge.jtds', module='jtds', version='1.3.1')
)
@GrabConfig(systemClassLoader=true)
import groovy.sql.*
// http://jtds.sourceforge.net/faq.html#urlFormat
def sql = Sql.newInstance("jdbc:jtds:sqlserver://MYSERVERIP", "uname",
       "pwd", "net.sourceforge.jtds.jdbc.Driver")
sql.eachRow("select * from word"){ 
  println it.spelling + " ${it.part_of_speech}"
}

jtds-1.2.2.jarをダウンロードし、groovyスクリプトに以下の行を追加します def sqlの前。

this.class.classLoader.rootLoader.addURL( new URL("file:/C:\\jtds-1.2.2.jar"))
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top