【发布时间】:2014-05-09 22:37:21
【问题描述】:
我试图通过调用 ANT 脚本从 maven 调用 org.h2.tools.RunScript 类。
maven 看起来像 ...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.3</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<property name="compile_classpath" refid="maven.compile.classpath"/>
<property name="runtime_classpath" refid="maven.runtime.classpath"/>
<property name="test_classpath" refid="maven.test.classpath"/>
<property name="plugin_classpath" refid="maven.plugin.classpath"/>
<echo>Starting DB</echo>
<ant antfile="${basedir}/dbbuild.xml" target="dbdo" />
</tasks>
</configuration>
</execution>
</executions>
</plugin>
ant 脚本如下所示:
<project name="" default="make" basedir=".">
<target name="make">
<property value="." name="basedir" />
<java classname="org.h2.tools.RunScript"
fork="true"
maxmemory="128m" >
<arg line="-user " />
<arg value=" sa" />
<arg line="-driver "/>
<arg value="org.h2.Driver" />
<arg line="-url " />
<arg value=" "jdbc:h2:file:${basedir}\\mydb;LOCK_MODE=3""/>
<arg line="-script " />
<arg value=" ${basedir}/src/main/resources/database/h2/testSchema.sql"/>
<classpath>
<pathelement path="${runtime_classpath}"/>
</classpath>
</java>
</target>
</project>
我不断收到此错误:
[java] Exception in thread "main" java.sql.SQLException: No suitable driver
found for jdbc:h2:file:C:\Apps\development\workspace\Phase3_1\directpay\quickpay
\\mydb;LOCK_MODE=3
[java] at java.sql.DriverManager.getConnection(DriverManager.java:602)
[java] at java.sql.DriverManager.getConnection(DriverManager.java:185)
[java] at org.h2.tools.RunScript.process(RunScript.java:312)
[java] at org.h2.tools.RunScript.runTool(RunScript.java:140)
[java] at org.h2.tools.RunScript.main(RunScript.java:68)
[java] Java Result: 1
[INFO] Executed tasks
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] --------------------
h2-1.3.163.jar 在类路径中。任何帮助将不胜感激。
谢谢
【问题讨论】:
-
URL 不应该是
jdbc:h2:c:\Apps\...而不是jdbc:h2:file:...。您可能还想尝试使用/而不是 `` 作为文件路径。 -
感谢您的评论。两个很好的建议,但它们似乎没有单独或结合起来产生影响。