Maven:如何将资源复制到WAR中?

时间:2014-08-22 18:34:34

标签: java eclipse maven ant

我有一个Eclipse webapp项目,我正在尝试从Ant构建迁移到Maven构建。我的src/文件夹中有很多非Java文件,例如log4j2.xmlehcache.xml,一些.properties本地化文件等。

当我在此项目上运行war:war目标时,生成的WAR文件仅包含.class文件夹中的WEB-INF/classes个文件,缺少所有非Java文件。在Ant中我做到了:

<target name="copy-resources" depends="compile">
  <copy todir="${build}">
    <fileset dir="${src}">
      <exclude name="**/*.java"/>
    </fileset>
  </copy>
</target>

如何在Maven中实现同样的目标?我怀疑我应该使用resources文件夹,但是现在我尝试使用尽可能少的原始代码库进行迁移...

1 个答案:

答案 0 :(得分:3)

您可以从资源文件夹访问这些文件。我希望这 link有帮助。

您还可以在pom.xml中指定文件夹(如果它不是默认资源文件夹)。看到 Specifying resource directories

例如,如果您的文件夹在src / my-resources中包含这些文件,则需要将其添加到pom.xml中,然后您就可以在代码中访问它了。

   <resources>
     <resource>
       <directory>src/my-resources</directory>
     </resource>
   </resources>