使用maven2删除嵌套的测试类

时间:2009-04-14 13:07:11

标签: java maven-2 nested-class inner-classes

我使用嵌套类来访问JUnit测试中的私有成员。它们被命名为“TestProxy”。

我想在构建时使用maven2删除它们,不要将它包含在jar文件中。

  • 有配置选项吗?
  • 可以用插件完成吗?如果是这样,原型会很好! ; - )

由于

编辑:为什么要使用私有方法?我需要从第三方系统注入数据,这些数据不能在每次JUnit测试运行时调用。我真的不想要私人数据的公共设置者,或者迟早另一个程序员可能会滥用它。

2 个答案:

答案 0 :(得分:2)

答案是:它可以配置maven。只需将以下代码插入build / plugins部分的文件pom.xml中:

<plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-jar-plugin</artifactId>
 <configuration>
   <excludes>
     <exclude>**/*$TestProxy*</exclude>
   </excludes>
 </configuration>
</plugin>

@查看文档:{​​{3}}

答案 1 :(得分:0)

对于这类事情,您可能会发现ant脚本是第一个调用端口而不是专用的自定义插件。让Maven在构建过程中运行任意ant脚本很简单。比创建插件更简单。 This question对如何使用Maven的process-sources构建执行阶段运行ant脚本进行了很好的描述。

稍微不同的是,我希望你会得到一堆答案,问你为什么要对私人无障碍的班级成员进行单元测试......