Jenkins管道抛出的异常。
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
我已经安装了数据库插件和MySQL数据库插件。
但是我仍然遇到这个异常。
管道代码:
import groovy.sql.Sql
node('master'){
Class.forName("com.mysql.jdbc.Driver")
def sql = Sql.newInstance("jdbc:mysql://10.10.115.38:3306/test", "root","123456", "com.mysql.jdbc.Driver")
def rows = sql.execute "select count(*) from test;"
echo rows.dump()
}
异常消息:
Running on Jenkins in /var/jenkins_home/workspace/test-jdbc
[Pipeline] {
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
我正在使用Jenkins版本2.222.1
此java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
的原因如下:
MySQL JDBC连接器jar可能会丢失。
如果使用的是更高版本的MySQL JDBC连接器,则必须更改类名-它是com.mysql.cj.jdbc.Driver
而不是com.mysql.jdbc.Driver
从此处下载jar:https://mvnrepository.com/artifact/mysql/mysql-connector-java