2012-01-05 32 views
5

Điều này có thể đã được yêu cầu trước đó (vì vậy xin lỗi trước nếu nó đã được - tôi chỉ chưa tìm thấy câu hỏi đúng!)Maven: địa phương so với kho lưu trữ từ xa

Tôi đang làm việc trên một dự án với hai kho lưu trữ Maven: một kho lưu trữ cục bộ (trên máy của tôi) và một gói nội bộ (trên một máy chủ trung tâm). Có một vài dự án khởi động xung quanh và một dự án cha mẹ sử dụng tất cả chúng. Khi chúng tôi hoàn thành công việc trên một dự án cụ thể, chúng tôi sẽ cài đặt nó vào kho lưu trữ trung tâm để mọi người khác sử dụng.

Khi tôi xây dựng dự án cha mẹ để thử nghiệm địa phương, tôi muốn sử dụng lên hầu hết các phiên bản cập nhật của từng dự án:

  • nếu ai đó đã cập nhật một dự án trong kho trung tâm, tôi muốn muốn sử dụng một số
  • nếu tôi đã thay đổi một dự án tại địa phương và cài đặt nó vào kho lưu trữ cục bộ của mình, tôi muốn điều đó để ghi đè lên tập trung.

Điều tôi thấy là xây dựng hoàn toàn bỏ qua kho lưu trữ cục bộ của tôi và chỉ lấy tất cả mọi thứ từ bộ nhớ trong. Tôi đã bỏ lỡ một thiết lập ở đâu đó rõ ràng? Hay đây chỉ là cách mọi thứ hoạt động?

+0

(1) Bạn đã định cấu hình các kho lưu trữ (cung cấp phần liên quan của pom). (2) Cung cấp các mục nhập nhật ký có liên quan 'mvn -X', cho thấy rằng maven đầu tiên thử kho lưu trữ trung tâm của bạn và sau đó là nội bộ. –

Trả lời

1

Bạn phải đảm bảo bạn sử dụng phiên bản -SNAPSHOT. Sau đó, nó sẽ so sánh địa phương và từ xa và sử dụng bất cứ điều gì là mới nhất.

Tất nhiên bạn cần phải có để có nó được cấu hình đúng trong settings.xml của bạn (có lẽ bạn nên cho chúng ta thấy rằng ..)

2

mvn -o sẽ đưa bạn vào chế độ ẩn nên không có gì sẽ được tải về.

Hoặc trong tệp settings.xml của bạn, hãy đặt chính sách cập nhật thành không phải lúc nào cũng cho ảnh chụp nhanh hoặc bản phát hành. See here và phần có liên quan bên dưới

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 
         http://maven.apache.org/xsd/settings-1.0.0.xsd"> 
    ... 
    <profiles> 
    <profile> 
     ... 
     <repositories> 
     <repository> 
      <id>codehausSnapshots</id> 
      <name>Codehaus Snapshots</name> 
      <releases> 
      <enabled>false</enabled> 
      <updatePolicy>always</updatePolicy> 
      <checksumPolicy>warn</checksumPolicy> 
      </releases> 
      <snapshots> 
      <enabled>true</enabled> 
      <updatePolicy>never</updatePolicy> 
      <checksumPolicy>fail</checksumPolicy> 
      </snapshots> 
      <url>http://snapshots.maven.codehaus.org/maven2</url> 
      <layout>default</layout> 
     </repository> 
     </repositories> 
     <pluginRepositories> 
     ... 
     </pluginRepositories> 
     ... 
    </profile> 
    </profiles> 
    ... 
</settings> 
Các vấn đề liên quan