Tôi có một dự án có nhiều phụ thuộc vào rất nhiều kho lưu trữ từ xa và ngay cả những phụ thuộc đó đôi khi cũng yêu cầu các kho lưu trữ từ xa khác.Proxy tất cả kho lưu trữ phụ thuộc maven thông qua Nexus
Tôi muốn tạo môi trường xây dựng ổn định và tôi muốn cài đặt Nexus địa phương của mình thành proxy tất cả yêu cầu của dự án để tôi có thể tái tạo các bản dựng mà không cần truy cập internet sau khi tôi thiết lập mọi thứ một lần.
Tức là, .m2/settings.xml
của tôi sẽ bao gồm:
<mirrors>
<mirror>
<id>my.public</id>
<url>http://localhost:8081/nexus/content/groups/public</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
Nhưng tất nhiên điều này là không đủ. Nexus sẽ không tùy ý ủy quyền cho từng yêu cầu và mọi yêu cầu của nó sẽ được cài đặt từ maven của tôi.
Hiện tại khi tôi hiểu và đây là cách tôi làm việc đó, với mọi kho lưu trữ từ xa tôi gặp phải, tôi tạo proxy trong Nexus và thêm nó vào nhóm công khai.
Trong trường hợp của tôi, chúng giống như 15 hoặc 20 kho lưu trữ từ xa. Hầu hết trong số đó là sự phụ thuộc của các gói của tôi, tức là không rõ ràng rằng tôi cần chúng cho đến khi tôi chạy một maven build và nhấn chúng. Tôi thấy chúng được tham chiếu chủ yếu trong các POM mẹ cho đến nay.
Câu hỏi của tôi: có cách nào để định cấu hình Nexus bằng cách nào đó không, vì vậy tôi không cần phải thêm từng kho lưu trữ bằng tay?
Khi tôi đọc lại câu hỏi của mình, dường như tôi muốn có một proxy HTTP thực sự nhưng điểm của Nexus là gì? Tất nhiên đây là một câu hỏi hùng biện, nhưng làm thế nào để giải quyết vấn đề này mà không cần thêm tất cả chúng bằng tay?
Tất cả tôi tìm thấy trong các tài liệu Nexus là http://www.sonatype.com/books/nexus-book/reference/config-sect-custom.html:
... bạn có thể gặp các dự án không có khả năng thu hồi hiện vật từ cài đặt Nexus địa phương của bạn
và
... thêm kho lưu trữ này vào Nexus làm kho lưu trữ proxy mới và sau đó thêm kho lưu trữ proxy mới vào nhóm công khai