Tôi có một dự án với vài tá trình bổ sung Eclipse, tất cả liên quan đến nhau và sống trong các thư mục con khác nhau. Việc xây dựng đã được chuyển đổi thành một mô-đun đầu tiên đa mô-đun Tycho xây dựng một vài năm trước đây và nó hoạt động khá tốt.Tên tệp pom.xml tùy chỉnh trong Maven multimodule cho Tycho
Một trong các plugin khá quan trọng và cũng có thể được xây dựng dưới dạng ứng dụng Java độc lập, không sử dụng thời gian chạy Eclipse. Hiện tại, nó có tệp POM riêng của mình (pom-standalone.xml
) để Jenkins có thể xây dựng ứng dụng độc lập riêng biệt và xây dựng Tycho không biết gì về nó - pom-standalone
chỉ liệt kê các plugin plugin được xây dựng trước đó (nhờ Tycho!) Và các thư viện Eclipse mà nó cần phụ thuộc. vấn đề Couple với cách tiếp cận này mặc dù:
tôi không thể dễ dàng sử dụng IntelliJ để làm việc trên các dự án độc lập với quản lý phụ thuộc Maven, bởi vì nó không nhận ra tên tập tin tùy chỉnh
pom-standalone.xml
như một POM.- Rất nhiều lọ mà dự án này dựa vào được kiểm tra trong dự án vì lợi ích của tệp Tycho và tệp kê khai Eclipse, nhưng chúng cũng được quản lý bởi Maven cho bản dựng độc lập. Vì vậy, bất kỳ phụ thuộc nào phải được thêm vào tệp
pom-standalone.xml
AND được nhập vào tệp kê khai OSGi VÀ đã đăng ký kiểm soát nguồn cho các mục đích Eclipse.
- Rất nhiều lọ mà dự án này dựa vào được kiểm tra trong dự án vì lợi ích của tệp Tycho và tệp kê khai Eclipse, nhưng chúng cũng được quản lý bởi Maven cho bản dựng độc lập. Vì vậy, bất kỳ phụ thuộc nào phải được thêm vào tệp
Nó có vẻ như một cách giải quyết đơn giản sẽ nói với Tycho/mô-đun để sử dụng một cái gì đó khác hơn pom.xml
cho POM của submodule, hoặc có lẽ tất cả các file POM multimodule, vì Eclipse không sử dụng những anyway - sau đó, pom-standalone.xml
có thể được chuyển đổi thành pom.xml
và sau đó IntelliJ sẽ ổn với nó.
Tôi biết bạn có thể chỉ định thuộc tính -f
cho bản dựng Maven, nhưng điều đó thực sự áp dụng cho tất cả các mô-đun con? Bạn có thể chỉ định tên tệp POM cho chỉ ONE mô-đun con?
Có giải pháp thay thế nào không? Các bản dựng Eclipse/Tycho/p2 có vẻ hơi đau đầu đòi hỏi phải quản lý thư viện thủ công và kiểm tra trong thư viện để kiểm soát nguồn, nhưng có lẽ đã có những thay đổi mà tôi không biết trong thế giới xây dựng Eclipse vài năm qua.
Tìm thấy số Similar Question không hữu ích nhiều.
Cảm ơn bạn! Tôi không thể tìm thấy thông tin đó ở đâu cả. Bây giờ nếu chỉ tôi biết làm thế nào để tránh kiểm tra trong tất cả những lọ cho việc xây dựng nhật thực. – tdm
@tdm - Nếu lọ của bạn là 'mvn install' vào kho lưu trữ maven cục bộ, hoặc' mvn deploy' đến kho lưu trữ maven từ xa, thì pom của bạn có thể liệt kê chúng là phụ thuộc và maven sẽ lấy chúng cho bản dựng. Yêu cầu Eclipse thực hiện cập nhật 'maven' để nhận bất kỳ thay đổi nào trong pom. –