2011-11-03 29 views
6

Tôi đang sử dụng NewRelic để theo dõi. Tôi muốn Maven đóng gói cả hai tệp newrelic.jarnewrelic.yaml vào số WEB-INF/lib bên trong tệp chiến tranh. Với newrelic.jar không có vấn đề gì vì nó phụ thuộc đơn giản, nhưng newrelic.yaml là tệp tài nguyên. Nó nằm trong thư mục tài nguyên. Tôi muốn Maven (plugin chiến tranh) sao chép nó vào WEB-INF/lib khi đóng gói chiến tranh.Làm thế nào để tạo tệp tài nguyên sao chép Maven vào thư mục WEB-INF/lib?

Cảm ơn.

Alex

+2

Bạn không nên đặt nó trong 'WEB-INF/classes' theo mặc định? Đây là nơi các tài nguyên không phải JAR cần phải đi trên đường dẫn lớp học –

+0

@mattb bạn chính xác, đó là cách nó nên, nhưng trong tài liệu di tích mới họ nói cả hai tệp phải ở cùng một hướng dẫn [liên kết tới tài liệu ] (http://newrelic.com/docs/java/using-new-relic-with-aws-elastic-beanstalk) – AlexV

+0

có vẻ lạ. Sẽ không bình thường khi một lớp học tìm kiếm các tài nguyên đặc biệt trong 'WEB-INF/lib' thay vì chỉ tải nó từ classpath –

Trả lời

9

khi tôi đồng ý với @ Matt b rằng đây là số lẻ, đây là những gì bạn có thể làm:

Hãy thử thay đổi cấu hình của các plugin maven chiến tranh để bao gồm một webResource:

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

Thư mục là liên quan đến tệp pom.xml. Xem the plugin's documentation để biết thêm thông tin.

+0

Nó hoạt động, Cảm ơn. – AlexV

0
  1. Bạn nên thử thêm tập tin .yaml đến tài nguyên newrelic.jar của, sau bạn có thể truy cập nó qua classpath.
  2. Hoặc hãy thử thay đổi/trọng build.xml xây dựng mục tiêu bằng cách thêm một cái gì đó giống như < copy file = "yaml." todir = "WEB-INF/lib" />

Try googling để biết thêm về việc thay đổi build.xml.

+0

Tôi không kiểm soát newrelic.jar, đó là bên thứ ba. Họ tìm tập tin cấu hình .yml trong cùng thư mục chứa jar. Một điều nữa, tôi đang sử dụng Maven vì vậy không có build.xml cho tôi. – AlexV

4

Bạn cũng có thể chỉ định hầu hết cấu hình cho tác nhân Relic mới bao gồm vị trí của tệp cấu hình qua cờ được chuyển đến lệnh java. Trong trường hợp này, đó là một cái gì đó như:

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

(ok, nó chính xác là như thế, nhưng bạn cần phải xác định bất cứ điều gì con đường bạn cần nếu nó không phải là .)

Các vấn đề liên quan