我的maven pom.xml 中有以下插件配置
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>prepare-database</id>
<phase>pre-integration-test</phase>
<configuration>
<target name="run">
<java fork="false" failonerror="yes" classname="Test">
<arg line="arg1 arg2"/>
</java>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
该类位于src/main/java下的一个包中,该包名为com.a.b,类文件名为Test.java
package com.a.b;
public class Test {
public static void main(String[] args)
{
String arg1 = args[0];
String arg2 = args[1];
doStuff(arg1, arg2);
}
public static void doStuff(String arg1, String arg2)
{
System.out.println(arg1);
}
}
当试图执行运行ant任务的maven构建时,我得到了以下错误:
发生Ant BuildException:找不到测试。确保你把它放在类路径中
我知道找不到这个文件,但我不知道该怎么办。如果有任何帮助,我将不胜感激。
看看Maven站点上的标准目录布局文章。
源文件夹应该是src/main/java(而不是src/java/main)
另外,你到底想对这个蚂蚁目标做什么?你只是需要叉子吗?为什么你不能把它作为一个纯粹的单元测试或maven集成测试来运行,而忘记ANT目标呢?
H2非常适合在内存中运行。只需要几行就可以连接到DB并开始测试,所有这些都在JVM中,都使用标准的jUnit代码。
Class.forName("org.h2.Driver");
Connection con = DriverManager.getConnection("jdbc:h2:mem:mytest", "sa", "");
Statement sst = con.createStatement();
sst.executeUpdate(SQL);