如何将Maven复制资源文件转换成WEB-INF / lib目录?

时间:2011-11-03 11:26:24

标签: java maven war newrelic

我正在使用NewRelic进行监控。我希望Maven将 newrelic.jar newrelic.yaml 文件打包到war文件中的WEB-INF/lib中。使用 newrelic.jar 没有问题,因为它是一个简单的依赖项,但 newrelic.yaml 是一个资源文件。它驻留在资源目录中。我希望Maven(war插件)在打包战争时将其复制到WEB-INF/lib

感谢。

亚历

3 个答案:

答案 0 :(得分:11)

虽然我同意@matt b这是奇怪的,但这是你可以做的:

尝试更改maven war插件的配置以包含webResource:

 <configuration>
      <webResources>
        <resource>
          <directory>pathtoyaml</directory>
          <includes>
            <include>**/*.yaml</include>
          <includes>        
         <targetPath>WEB-INF/lib</targetPath>
        </resource>
      </webResources>
    </configuration>

该目录是相对于pom.xml的。有关详细信息,请参阅the plugin's documentation

答案 1 :(得分:4)

您还可以通过传递给java命令的标志为New Relic代理指定大多数配置,包括配置文件的位置。在这种情况下,它类似于:

-Dnewrelic.config.file =的/ etc / newrelic.yml

(好吧,它就是这样,但你需要指定你需要的任何路径,如果不是那样的话。)

答案 2 :(得分:0)

  1. 您应该稍后尝试将.yaml文件添加到newrelic.jar的资源中 你可以通过classpath访问它。
  2. 或者尝试通过添加类似&lt;的内容来更改/覆盖build.xml构建目标。 copy file =“。yaml” todir =“WEB-INF / lib”/&gt;
  3. 尝试谷歌搜索有关更改build.xml的更多信息。