Java 如何像在JAR中一样使用Maven运行单元测试?

Java 如何像在JAR中一样使用Maven运行单元测试?,java,eclipse,unit-testing,maven,junit,Java,Eclipse,Unit Testing,Maven,Junit,我们最近遇到了一个错误,原因是一些代码假设类路径资源可以像打开普通文件一样打开。这段代码被通过的单元测试所覆盖,因为这个假设在Maven和Eclipse中都适用。但在生产中,该代码在服务战争中被放在一个罐子里,显然不起作用 我们修复了这个bug,但我不太满意,因为我不知道如何确保它不会再次发生。单元测试是使用。这发生在mvn测试期间,而“测试”发生在包装之前。但是,如果您想在mvn包之后运行测试,则应该使用 下面是一些关于配置类路径的信息。默认情况下,它将把${project.build.out

我们最近遇到了一个错误,原因是一些代码假设类路径资源可以像打开普通文件一样打开。这段代码被通过的单元测试所覆盖,因为这个假设在Maven和Eclipse中都适用。但在生产中,该代码在服务战争中被放在一个罐子里,显然不起作用

我们修复了这个bug,但我不太满意,因为我不知道如何确保它不会再次发生。

单元测试是使用。这发生在
mvn测试期间,而“测试”发生在包装之前。但是,如果您想在
mvn包
之后运行测试,则应该使用


下面是一些关于配置类路径的信息。默认情况下,它将把
${project.build.outputDirectory}
放在类路径中,但是您应该能够通过设置为其他目录来防止这种情况。然后,您可以添加自己的jar,作为一个或

故障保护仍然使用
/target/classes
类路径,而不是只使用生成的jar:有点粗糙,但我认为它会工作,我想不出更好的选择。@yshavit me:)谢谢,我会尝试一下!