将maven插件更新到版本5.1.2后,我收到错误消息
$ERROR [SoapUI] An error occurred [No suitable driver found for jdbc:oracle:thin:@//174.23.0.187:1111/qwe], see error log for details
java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@//174.23.0.187:1111/qwe
at java.sql.DriverManager.getConnection(DriverManager.java:596)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at groovy.sql.Sql.newInstance(Sql.java:398)
at groovy.sql.Sql.newInstance(Sql.java:442)
at groovy.sql.Sql$newInstance.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45)
...
答案 0 :(得分:1)
您需要在您的类路径中包含oracle jdbc驱动程序,您可以从here下载
由于你有一个maven项目,最正常的做法是简单地在你的pom.xml
中包含依赖项,但是由于oracle jdbc许可证,没有这个jar的公共存储库,但是最近(a)几天前)oracle将这个jar添加到他们的存储库中。您可以按照oracle blog的详细信息尝试使用它(请注意,用户身份验证是必需的,maven版本3.2.5更高)。
答案 1 :(得分:1)
如果您不想使用密码锁定 Oracle repo,您可以执行以下操作:
从Oracle下载O-JDBC。
将其放入您的项目中。像某个lib
目录。
使用maven-install-plugin
在本地仓库中安装jar。像这样:
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>install-ojdbc7</id>
<phase>pre-integration-test</phase>
<configuration>
<file>lib/ojdbc7.jar</file>
<repositoryLayout>default</repositoryLayout>
<groupId>oracle.jdbc</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2.0</version>
<packaging>jar</packaging>
<generatePom>true</generatePom>
</configuration>
<goals>
<goal>install-file</goal>
</goals>
</execution>
</executions>
</plugin>
有关其工作原理的详细信息将进一步讨论here。
对于您的SoapUI,您需要链接依赖项:
<plugin>
<groupId>com.smartbear.soapui</groupId>
<artifactId>soapui-maven-plugin</artifactId>
<version>${soapui-maven-plugin.version}</version>
<dependencies>
<dependency>
<groupId>oracle.jdbc</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2.0</version>
</dependency>
</dependencies>
<executions>
<execution>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
...
</configuration>
</execution>
</executions>
</plugin>
我正在使用mvn verify
来运行这一切。
答案 2 :(得分:1)
注册JDBC驱动程序解决了这个问题
com.eviware.soapui.support.GroovyUtils.registerJdbcDriver( "oracle.jdbc.OracleDriver" )