运行Liquibase时出现意外错误:java.lang.RuntimeException:找不到数据库驱动程序:oracle.jdbc.OracleDriver

时间:2018-04-06 13:26:39

标签: gradle liquibase

之前曾被问过,但没有帮助,因为我正在使用gradle。我在jdbc:oracle:thin:@//localhost:1521/xe的Docker中运行了Oracle 12c。

在我的gradle.build中,我有以下gradle任务:

task('dev') << {
    println "executing dev"
    liquibase {
        activities {
            main {
                changeLogFile changeLog
                url 'jdbc:oracle:thin:@//localhost:1521/xe'
                username 'admin'
                password 'admin'
            }
        }
    }
}

我向libs/jdbc-oracle.jar添加了两个不同的jar并添加了compile files('libs/jdbc-oracle.jar'),但仍然遇到了同样的错误。我使用的是gradle liquidbase plugin版本classpath "org.liquibase:liquibase-gradle-plugin:1.2.4"

以前有人有这个问题吗?它是如何解决的?

-------------------更新1 -----------------

我添加了以下内容:

compile ("com.oracle:ojdbc7:12.1.0.1")中的{p> buildscript并在dependencies中尝试都失败了。

1 个答案:

答案 0 :(得分:0)

在这种情况下,我必须手动添加jar并使用JDBC 7,而不是在main下添加classpath。 JDBC 12给了我错误,我发现降级应解决这里的问题link to post

task('dev') << {
    println "executing dev"
    liquibase {
        activities {
            main {
                changeLogFile changeLog
                classpath 'build/libs/jdbc7.jar'
                url 'jdbc:oracle:thin:@//localhost:1521/xe'
                username 'admin'
                password 'admin'
            }
        }
    }
}