相关疑难解决方法(0)

Gradle buildscript 找不到 Postgresql JDBC 驱动程序

我正在尝试使用 gradle 任务设置数据库。但是我没有运气找到 postgresql JDBC 驱动程序。在 java 项目中,它找到驱动程序并运行良好(虽然它没有通过 buildscript 获得依赖项),但不是 gradle.build 文件。

我尝试使用 groovy.sql,但遇到了同样的错误。

buildscript {
 repositories {
   mavenCentral()
 }

 dependencies {
  classpath 'org.postgresql:postgresql:42.2.0'
 }
}

import java.sql.*
task testTask {
 ...
Run Code Online (Sandbox Code Playgroud)

这一行抛出一个错误: 没有为 jdbc 找到合适的驱动程序:postgresql://localhost:5432/db

 Connection conn = DriverManager.getConnection(db.url, db.user, db.password) 
 ...
}
Run Code Online (Sandbox Code Playgroud)

java postgresql jdbc gradle build.gradle

5
推荐指数
1
解决办法
9257
查看次数

DriverManager在gradle自定义插件的任务中看不到依赖项

我正在编写一些gradle插件,现在我遇到了一个问题,即DriverManager没有看到在buildscript依赖项中定义的JDBC驱动程序:

我有下一个build.gradle文件:

buildscript {
   repositories {
      mavenCentral()
   }
   dependencies {
      classpath("com.h2database:h2:1.4.196")
   }
}
plugins {
   id "someplugin"
}
apply plugin: 'groovy'
Run Code Online (Sandbox Code Playgroud)

当我调用在任务中定义的扩展DefaultTask的命令时

DriverManager.getConnection("jdbc:h2:mem:", "sa", "")
Run Code Online (Sandbox Code Playgroud)

我收到例外

No suitable driver found for jdbc:h2:mem:
Run Code Online (Sandbox Code Playgroud)

当我对这些类进行单元测试时没有问题 - 只有当我调用调用DriverManager.getConnection的插件任务时才会发生这种情况.

我在这里错过了什么?谢谢!

groovy jdbc gradle gradle-plugin

4
推荐指数
1
解决办法
555
查看次数

标签 统计

gradle ×2

jdbc ×2

build.gradle ×1

gradle-plugin ×1

groovy ×1

java ×1

postgresql ×1