在我的 ~/.bashrc 中:
export CLASSPATH=~/mysqljdbc/mysql-connector-java-5.1.21-bin.jar
CLASSPATH 变量是正确的:
ray@ubuntu:~$ echo $CLASSPATH
/home/ray/mysqljdbc/mysql-connector-java-5.1.21-bin.jar
尝试运行它:
ray@ubuntu:/var/www/project$ sh ~/flyway-commandline-1.7/flyway.sh -driver=com.mysql.jdbc.Driver -user=root -p=password -url=jdbc:mysql://localhost:3306/project init
Flyway (Command-line Tool) v.1.7
FlywayException: Unable to instantiate jdbc driver: com.mysql.jdbc.Driver
Occured in com.googlecode.flyway.core.util.jdbc.DriverDataSource.<init>() at line 93
为什么找不到驱动程序?
谢谢!
最佳答案
指定 -classpath 或 -cp 覆盖 CLASSPATH 的任何设置,这是在 flyway.sh 中完成的 根据flyway docs你必须将你的 mysql jdbc jar 存储在 jars 文件夹中(或者只是将它添加到 flyway.sh 中的 JVM 启动)。
关于java - 使用 Flyway 的 MySQL JDBC 驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11586979/