La excepción lanzada por la canalización de Jenkins.
java.lang.ClassNotFoundException: com.mysql.jdbc.DriverYa instalé el complemento de base de datos y el complemento de base de datos MySQL .
Pero todavía estoy recibiendo esta excepción.
El código de tubería:
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() }Mensaje de excepción:
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)Estoy usando Jenkins versión 2.222.1
El motivo de esta java.lang.ClassNotFoundException: com.mysql.jdbc.Driver es que falta el contenedor MySQL Connector/J.
Nota: si está utilizando una versión superior de MySQL Connector/J, se recomienda utilizar com.mysql.cj.jdbc.Driver en lugar de com.mysql.jdbc.Driver
Actualicé tu guión.
import groovy.sql.Sql node('master'){ Class.forName("com.mysql.cj.jdbc.Driver") def sql = Sql.newInstance("jdbc:mysql://10.10.115.38:3306/test", "root","123456", "com.mysql.cj.jdbc.Driver") def rows = sql.execute "select count(*) from test;" echo rows.dump() }Descargue el jar desde aquí: https://mvnrepository.com/artifact/mysql/mysql-connector-java