【发布时间】:2013-04-03 09:11:55
【问题描述】:
我已经开始编写一个在 process-resources 阶段运行的脚本(不是我的想法,当我得到它时就是这样)。它执行 sql 脚本来清理数据库。我需要将它从命令行工具迁移到 Jdbc。
问题是当我尝试加载驱动程序时,我得到:
java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver
我尝试过使用其他数据库系统的驱动程序,但异常总是相同的。驱动程序在 Eclipse 中作为 maven 依赖项可见,它们的范围是“编译”。
我尝试以两种方式加载它:
Class.forName("net.sourceforge.jtds.jdbc.Driver")
//and:
def sql = Sql.newInstance(url,user,pass,"net.sourceforge.jtds.jdbc.Driver")
我知道在构建阶段运行这样的脚本不是一个好习惯,但在那个时候仍然可以让这些类可见吗?
[编辑] 可以创建 Driver 类的对象,所以它似乎不是 maven 阶段的问题。更改标题以反映这一点。
【问题讨论】:
-
第一个错误的生命周期阶段(更好pre-integration-test,因为它看起来像是集成测试的一部分),为什么不使用sql-maven-plugin?