2010-03-16 34 views
15

Tôi đã cố gắng tìm ra cách mixin được định nghĩa trong Maven 3, nhưng không thể tìm thấy bất kỳ điều gì khác ngoài buzz. Nó được nhân giống như một trong những tính năng mới lớn herehere. Tôi hiện đang cảm thấy nỗi đau của cấu trúc phân cấp và muốn cung cấp cho nó một spin. Có ai có một con trỏ để tài liệu hoặc nguồn xác định cú pháp, ngay cả?Làm thế nào để sử dụng Maven 3 mixins?

Trả lời

14

Trong một bình luận cho this answer, Brett Porter đã viết:

Maven 3.0 không cung cấp mixins nào, tuy nhiên. - Brett Porter Ngày 16 tháng 2 tại 8:18

Và AFAIK, mixin vẫn không có ở đó.

+3

Tôi cũng hỏi qua twitter và nhận được câu trả lời tương tự từ Jason van Zyl. Dường như nó sẽ đến trong Maven 3.1. Xem: http://twitter.com/jvanzyl/status/10601935842 –

+0

@Mirko Cảm ơn bạn đã phản hồi! –

+2

Xem thảo luận: https://jira.codehaus.org/browse/MNG-5102 –

3

Jesse Glick chỉ vào vấn đề Maven 5102, vì vậy tôi chỉ muốn đề cập rằng nhận xét gần đây nhất có (2 tháng 10 năm 2012) liên kết đến một plugin maven mới cung cấp hành vi mixin: maven-tiles. Điều này dường như là lựa chọn tốt nhất cho đến khi hỗ trợ mixin thực sự được nướng vào Maven (một cái gì đó đã bị trì hoãn vài năm nay).

Chỉnh sửa 2015-Jan: tknerr đã chỉ ra rằng vấn đề này đã bị gắn cờ để xem xét cho bao gồm Maven 4. Các nhà phát triển Maven dường như tin rằng các thay đổi định dạng POM được yêu cầu để hỗ trợ tính năng này một cách chính xác. (Là người dùng Maven lâu năm, tôi không ngạc nhiên bởi điều này.)

+1

MNG-5102 hiện đang nói: "Bản sửa lỗi/s: Các vấn đề cần được xem xét cho 4.x". Vì vậy, nó không phải trong 3.x được nêu ra và có lẽ sẽ không bao giờ làm cho nó ở đó ... –

0

Mixins hiện được lên lịch cho Maven 3.2 là bug MNG-5102. Chúng nằm trong số rất nhiều lỗi được đánh giá cao đã không được đề cập trong ứng cử viên Maven 3.1.

Rất nhiều cho "Mở đường mong muốn".

1

Bạn có thể sử dụng các plugin nguồn mở để giới thiệu mixin vào pom của bạn.

Có một số plugin giải quyết sự phức tạp của cấu trúc phân cấp dưới dạng mixin. Một trong số chúng được thiết kế để giải quyết cấu trúc phân cấp trong phần quản lý plugin/plugin.

Nó đọc tất cả các tệp POM đã nhập và hợp nhất chúng vào tệp POM theo cách tương tự Maven tính toán hiệu quả-pom. Plugin chỉ hợp nhất các phần xây dựng, thuộc tính và tiểu sử và không hợp nhất bất kỳ phần tử nào khác của pom như phụ thuộc, kho lưu trữ, v.v.

Trong đoạn mã mẫu, mixin tạo tác sẽ sử dụng cấu hình quản lý plugin được định nghĩa trong tệp pom mẫu mixin. Không cần phải kế thừa bất kỳ pom phụ huynh/cơ sở cho việc này ..

<plugin> 
 
    <groupId>com.github.odavid.maven.plugins</groupId> 
 
    <artifactId>mixin-maven-plugin</artifactId> 
 
    <version>0.1-alpha-23</version> 
 
    <extensions>true</extensions> 
 
    <configuration> 
 
    <mixins> 
 
     <mixin> 
 
     <groupId>mixin-example</groupId> 
 
     <artifactId>sample-mixin</artifactId> 
 
     <version>${project.version}</version> 
 
     </mixin> 
 
    </mixins> 
 
    </configuration> 
 
</plugin>

Để đọc thêm, check it out: http://rethinkingswd.blogspot.co.il/2014/09/mixin-maven-plugin-reusable-project.html

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