14

次の Groovy スクリプトはjava.lang.ClassNotFoundException: com.mysql.jdbc.Driver例外で失敗します。

@Grapes([
    @Grab('mysql:mysql-connector-java:5.1.25')
])

import groovy.sql.Sql

def sql = Sql.newInstance(
    'jdbc:mysql://localhost/books', 
    'root',
    '', 
    'com.mysql.jdbc.Driver'
);

に保存されている JAR ファイルを調べたC:\Users\Dusan\.groovy\grapes\mysql\mysql-connector-java\jars\mysql-connector-java-5.1.25.jarところ、Driver クラスが含まれていました。

何が間違っている可能性がありますか?

4

2 に答える 2

24

必要なもの:

@GrabConfig(systemClassLoader = true)

@Grab の後、次のようにします。

@Grab('mysql:mysql-connector-java:5.1.25')
@GrabConfig(systemClassLoader = true)
import groovy.sql.Sql

def sql = Sql.newInstance(
    'jdbc:mysql://localhost/books', 
    'root',
    '', 
    'com.mysql.jdbc.Driver'
)

すべき

于 2013-08-03T19:24:28.303 に答える
1

groovysh でどのように使用しますか?

ドキュメントによると、グラブはシェルでこのように使用されます

groovy.grape.Grape.grab([group:'mysql:mysql-connector-java:5.1.25'])

@GrabConfig に相当するものは見つかりませんでした。groovysh 内では機能しません。

于 2014-04-01T23:20:15.190 に答える