如何使用Maven将文件添加到战争中

Max*_*wil 10 maven-2 maven-plugin

我开发了一个maven插件,可以从JIRA下载发行说明.它默认绑定到'generate-sources'阶段,并在build文件夹($ {project.build.directory})中创建一个'release.txt'文件.

我的问题:如何在Maven构建的war文件的'WEB-INF'文件夹中添加此文件?

我知道我可以使用'maven-war-plugin'来包含'src'文件夹中的其他外部资源,但我不希望我的'release.txt'文件在那里生成(=不能生成svn).

谢谢你的帮助.祝今天好运!

马克桑斯

sim*_*ord 16

我认为这可以使用该插件的这个功能来完成:

添加和过滤外部Web资源:http: //maven.apache.org/plugins/maven-war-plugin/examples/adding-filtering-webresources.html

这将允许您将release.txt生成到一个单独的文件夹(而不是src),并让插件将其视为额外的资源文件夹.

希望有所帮助.

<plugin> 
  <groupId>org.apache.maven.plugins</groupId> 
  <artifactId>maven-war-plugin</artifactId> 
  <configuration> 
    <webResources> 
      <resource> 
        <directory>${project.build.directory}</directory> 
        <targetPath>WEB-INF</targetPath> <!-- introduced in plugin v 2.1 -->
        <includes> 
          <include>release.txt</include> 
        </includes> 
      </resource> 
    </webResources> 
  </configuration> 
</plugin> 
Run Code Online (Sandbox Code Playgroud)

  • 好的,它可以工作:<plugin> <groupId> org.apache.maven.plugins </ groupId> <artifactId> maven-war-plugin </ artifactId> <version> 2.1-alpha-2 </ version> <configuration> <webResources> <resource> <directory> $ {project.build.directory} </ directory> <targetPath> WEB-INF </ targetPath> <includes> <include> release.txt </ include> </ includes> </ resource> </ webResources> </ configuration> </ plugin>备注:版本2.0会忽略targetPath设置 (3认同)