Ral*_*lph 13 maven-2 filtering
我写了一个小的BeanShell脚本,它取代"__LINE__"了源代码中的实际行号.它在Ant中运行良好.
我正在寻找一种方法来过滤Maven中的源代码,以便我的BeanShell脚本可以生成一个新的源代码目录,然后进行编译.
我知道资源文件过滤.是否有类似的源代码设施?
Bap*_*hus 22
几个月前过滤源代码仍然很棘手,但MOJO项目现在有一个标准的插件.您现在可以使用经典插件声明来完成此操作.
要过滤源代码(例如,当您希望在Java代码中使用常量来检索项目版本或artifactId时),您现在应该使用templating-maven-plugin.
在构建过程中放置应该过滤的代码,src/main/java-templates就像通常src/main/java对非过滤源一样.${project.version}在代码中使用来自POM的任何属性.
只需添加以下内容:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>templating-maven-plugin</artifactId>
<version>1.0-alpha-3</version> <!-- Be sure to use the last version. Check on the website's plugin -->
<executions>
<execution>
<id>filter-src</id>
<goals>
<goal>filter-sources</goal>
</goals>
</execution>
</executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)完成 :-).您放入的代码将src/main/java-templates被过滤并添加到类路径中.
这比Maven的配置更好地遵循约定的想法.你基本上是替换了数十条XML线和一些黑客来干净利落地完成任务.
旁注:例如,这适用于Eclipse.