我正在尝试从 gradle 脚本任务中查询数据库。我从一个 groovy 脚本开始来验证代码
import groovy.sql.Sql
this.class.classLoader.rootLoader.addURL(new URL('file:<..>/jtds-1.2.2.jar'))
def driver = 'net.sourceforge.jtds.jdbc.Driver'
def dburl = "jdbc:jtds:sqlserver://ITSVIL:1433/APPDB"
def first
Sql.withInstance(dburl, '<..>', '<..>', driver) {
sql ->
first = sql.firstRow( "SELECT * FROM PROJECT" )
}
我使用 groovy QueryTest.groovy 启动并验证它是否有效。然后我将脚本移动到 gradle 任务中,代码没有更改,但加载由 gradle buildscript 语句处理
import groovy.sql.Sql
defaultTasks 'queryTest'
buildscript {
dependencies {
classpath files('<..>/jtds-1.2.2.jar')
}
}
task queryTest () {
// l'update va su REPOSITORYURL + '/' + alm.project.vcrProjectName + '/' + Reference
doLast {
def driver = 'net.sourceforge.jtds.jdbc.Driver'
def dburl = "jdbc:jtds:sqlserver://ITSVIL:1433/APPDB"
def first
Sql.withInstance(dburl, '<..>', '<..>', driver) {
sql ->
first = sql.firstRow( "SELECT * FROM PROJECT" )
}
}
}
使用 gradle -b QueryTest.gradle 启动,这次我得到
Execution failed for task ':queryTest'.
> java.sql.SQLException: No suitable driver found for jdbc:jtds:sqlserver://ITSVIL:1433/IKALM_APP
尝试了我在论坛中找到的任何可能的建议,但没有成功。会寻求帮助。