JMeter 和 Gitlab:如何安装和 SQLServer JDBC 驱动程序?
JMeter & Gitlab: How to Install & SQLServer JDBC Driver?
我有一个从 justb4/jmeter:latest
Docker 图像调用 JMeter 的 Gitlab 管道。
一切正常,但后来我在检查最新版本的 JMX 时忘记了我正在使用本地安装的 MSSQL JDBC 驱动程序,所以我得到了下面预期的 ClassNotFoundException。
什么是 the/a 使相关 DLL 和 JAR 可用于我的 gitlab-ci 文件的正确方法?
Cannot load JDBC driver class 'com.microsoft.sqlserver.jdbc.SQLServerDriver'
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
at org.apache.commons.dbcp2.DriverFactory.createDriver(DriverFactory.java:49)
at org.apache.commons.dbcp2.BasicDataSource.createConnectionFactory(BasicDataSource.java:462)
at org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:528)
at org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:734)
at org.apache.jmeter.protocol.jdbc.config.DataSourceElement$DataSourceComponentImpl.getConnection(DataSourceElement.java:362)
at org.apache.jmeter.protocol.jdbc.config.DataSourceElement.getConnection(DataSourceElement.java:198)
at org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler.sample(JDBCSampler.java:80)
at org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:638)
at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:558)
at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:489)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256)
at java.lang.Thread.run(Thread.java:748)
justb4/jmeter:latest
中的 Microsoft JDBC driver needs to be present in the image you're deploying so you need to create your own Docker image based on the Dockerfile 并在
之间再添加一行
&& tar -xzf /tmp/dependencies/apache-jmeter-${JMETER_VERSION}.tgz -C /opt \
和
&& rm -rf /tmp/dependencies
您需要添加如下内容:
&& curl -L --silent https://repo1.maven.org/maven2/com/microsoft/sqlserver/mssql-jdbc/9.4.1.jre8/mssql-jdbc-9.4.1.jre8.jar > /opt/apache-jmeter-${JMETER_VERSION}/lib \
那么您需要:
今后请注意,您可以自己从头开始构建 JMeter docker 图像,而不必依赖其他人的图像,请参阅 Make Use of Docker with JMeter - Learn How 文章以获取全面信息。
我有一个从 justb4/jmeter:latest
Docker 图像调用 JMeter 的 Gitlab 管道。
一切正常,但后来我在检查最新版本的 JMX 时忘记了我正在使用本地安装的 MSSQL JDBC 驱动程序,所以我得到了下面预期的 ClassNotFoundException。
什么是 the/a 使相关 DLL 和 JAR 可用于我的 gitlab-ci 文件的正确方法?
Cannot load JDBC driver class 'com.microsoft.sqlserver.jdbc.SQLServerDriver'
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
at org.apache.commons.dbcp2.DriverFactory.createDriver(DriverFactory.java:49)
at org.apache.commons.dbcp2.BasicDataSource.createConnectionFactory(BasicDataSource.java:462)
at org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:528)
at org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:734)
at org.apache.jmeter.protocol.jdbc.config.DataSourceElement$DataSourceComponentImpl.getConnection(DataSourceElement.java:362)
at org.apache.jmeter.protocol.jdbc.config.DataSourceElement.getConnection(DataSourceElement.java:198)
at org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler.sample(JDBCSampler.java:80)
at org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:638)
at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:558)
at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:489)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256)
at java.lang.Thread.run(Thread.java:748)
justb4/jmeter:latest
中的 Microsoft JDBC driver needs to be present in the image you're deploying so you need to create your own Docker image based on the Dockerfile 并在
&& tar -xzf /tmp/dependencies/apache-jmeter-${JMETER_VERSION}.tgz -C /opt \
和
&& rm -rf /tmp/dependencies
您需要添加如下内容:
&& curl -L --silent https://repo1.maven.org/maven2/com/microsoft/sqlserver/mssql-jdbc/9.4.1.jre8/mssql-jdbc-9.4.1.jre8.jar > /opt/apache-jmeter-${JMETER_VERSION}/lib \
那么您需要:
今后请注意,您可以自己从头开始构建 JMeter docker 图像,而不必依赖其他人的图像,请参阅 Make Use of Docker with JMeter - Learn How 文章以获取全面信息。