2010-11-16 27 views
9

Tôi có trong tệp pom của ứng dụng web, một hồ sơ xây dựng, một số thứ cần thiết (trong mã của tôi) để kiểm tra qa.thay đổi tên hiện vật được triển khai dựa trên hồ sơ

tôi có mã này trên svn và mã này được biên soạn trong Hudson, trong đó triển khai các đồ tạo tác trong mối quan hệ ..

Hudson có hai công việc, một cho hồ sơ qa (-P qa) và một cho khách hàng.

Điều tôi cần là tôi thay đổi cấu hình qa của mình tên của tác phẩm trong giai đoạn triển khai, do đó nexus có hai tệp war khác nhau, một cho qa và một cho khách hàng.

Tôi sử dụng (sau khi tìm kiếm trên Google) nội dung sau trông giống như không có gì trong hudshon!

<profile> 
     <id>qa</id> 
     <build> 
      <plugins> 
       <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-deploy-plugin</artifactId> 
        <version>2.5</version> 
        <configuration> 
         <classifier>qa</classifier> 
        </configuration> 
       </plugin> 
      </plugins> 
     </build> 
    </profile> 

bất kỳ ý tưởng nào đó?

Trả lời

12

Bạn thực sự cần phải thiết lập các "phân loại" tùy chọn cấu hình trên các plugin đó là xây dựng các gói phần mềm đó đang được triển khai: maven- (tai | ejb | jar | rar | chiến | bóng râm) -plugin:

Ví dụ , để xây dựng một WAR với một phân loại qa, bạn sẽ làm như sau:

<profile> 
    <id>qa</id> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <version>2.1.1</version> 
       <configuration> 
        <classifier>qa</classifier> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
</profile> 

Ngoài ra, thay vì thiết lập các phân loại bạn có thể đặt bất kỳ những điều sau đây (hầu hết mặc định để project.build.finalName, vì vậy việc thiết rằng cập nhật thuộc tính nhiều trong số này):

  • chung
    • project.build.finalName
  • chiến Plugin
    • warName
  • Tai | Jar | Rar | Shade Plugin
    • finalName
  • EJB Plugin
    • jarName

Một lưu ý cuối cùng: Tôi chưa bao giờ nhận ra điều này trước đây, nhưng nhìn qua các tài liệu, có vẻ như các plugin RAR không hỗ trợ "phân loại" tùy chọn. Shade không hỗ trợ khái niệm phân loại, nhưng thực hiện nó thông qua thuộc tính "shadedClassifierName".

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