1 回答
TA贡献1779条经验 获得超6个赞
正如我所提到的,在故障排除过程中,我注意到里面的一行data-h2.sql以某种方式被运行了两次,因此出现了这个唯一索引违规。进一步排除故障,我追溯到它加载数据脚本的过程中的点(即。data-h2.sql),并注意到它正在加载该脚本两次。一进target\classes\data-h2.sql一进target\test-classes\data-h2.sql。老实说,我不知道为什么这个脚本文件被复制到target\classes\data-h2.sql.
最后我发现这是一个eclipse问题。当我使用命令行运行测试时mvn clean test。测试运行完美,但是当我用 eclipse 运行测试时,Run As -> JUnit Test我会遇到这个问题。出于某种原因,每当我在 eclipse 中清理应用程序时,它Project -> Clean都会将所有资源文件src/main/resources从. 我所要做的就是将以下行添加到我的文件中。src/test/resourcestarget\classes.classpath
<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
<attribute name="test" value="true"/>
</attributes>
</classpathentry>
添加回答
举报
