Trong file POM của tôi, tôi xác định hai kho:Maven: ý nghĩa của ID kho
<repositories>
<repository>
<id>myid</id>
<url>http://url1</url>
</repository>
<repository>
<id>myid</id>
<url>http://url2</url>
</repository>
</repositories>
Vì vậy, từ tài liệu Maven, tôi có ấn tượng rằng các yếu tố id
nên tham khảo chéo với một settings.xml
server
mục nhập, để chỉ định thông tin xác thực. Cả hai http://url1
và http://url2
, trong trường hợp của tôi, yêu cầu dữ liệu xác thực rất giống nhau; đó là lý do tại sao tôi đang sử dụng cùng một id
cho cả hai.
Tuy nhiên, Maven than phiền, nói rằng yếu tố id
phải là duy nhất.
Điều gì mang lại? Mục đích chính xác của yếu tố id
là gì? Tôi biết (chắc chắn) Maven sử dụng nó để lấy dữ liệu xác thực - đó là lý do tại sao mọi thứ hoạt động khi tôi chỉ chỉ định một kho lưu trữ. Tại sao tôi phải sao chép dữ liệu xác thực của mình? tôi đang thiếu gì?
[Như đã nói ở đây] (http://maven.apache.org/settings.html#Servers) có vẻ như Maven liên kết mọi kho lưu trữ với mục nhập máy chủ. Có vẻ như bạn sẽ phải tạo hai mục nhập máy chủ, nhưng bạn không phải sao chép thông tin xác thực của mình, chỉ cần đặt chúng như thuộc tính và sử dụng chúng vào mỗi mục nhập của bạn. –
@XtremeBiker, các thuộc tính được định nghĩa bên trong 'settings.xml' chỉ nằm trong ngữ cảnh của một cấu hình. Vì một số lý do, các thuộc tính này không được mở rộng cho các phần tử 'server'. – Isaac