2012-09-15 20 views
11

Tôi nghĩ điều này có thể xảy ra, nhưng tôi không tìm thấy bất kỳ thứ gì liên quan đến nó, vì tất cả những gì tôi tìm thấy liên quan đến kho lưu trữ phụ thuộc.Thêm kho lưu trữ maven (phân phối) trên dòng lệnh

Điều tôi muốn làm là xác định kho lưu trữ nơi maven (triển khai hoặc phát hành plugin chẳng hạn) đẩy các tạo phẩm. Làm thế nào tôi có thể xác định nó trên dòng lệnh? Tôi cho rằng đó là -Dsomething

UPDATE: Khi tôi đọc một đầu ra Jenkins lỗi một cách cẩn thận, nó gợi ý về việc sử dụng:
-DaltDeploymentRepository=id::layout::url

định dạng cho việc sử dụng này là gì? Thông số bố cục là gì?

Trả lời

19

Điều đơn giản nhất là đọc documentation about the maven-deploy-plugin trong đó mô tả các định dạng:

mvn -DaltDeploymentRepository=repositoryId::default::http://WhatEverURL 

Trong distributionManagement bạn thường đưa ra những câu như:

<distributionManagement> 
    <repository> 
     <id>internal.repo</id> 
     <name>MyCo Internal Repository</name> 
     <url>Host to Company Repository</url> 
    </repository> 
    </distributionManagement> 

Nếu bạn muốn sử dụng một URL khác trong này trường hợp bạn cần phải cung cấp:

mvn -DaltDeploymentRepository=internal.repo::default::http://WhatEverURL 

mặc định trong trường hợp này là mặc định cho số maven repository layout.

+0

Tôi đã figured này ra sau khi tôi tìm thấy tên của tham số đúng, nhưng cám ơn! – varesa

+0

Chỉ cần sửa chữa trên dòng lệnh. Theo tài liệu hướng dẫn sẽ như sau: "mvn -daltDeploymentRepository = internal.repo :: default :: http: // WhatEverURL" –

+0

Cập nhật câu trả lời cho phù hợp. Cảm ơn gợi ý. – khmarbaise

1

Trong tệp pom.xml, bạn nên thêm cấu hình distributionManagement vào vị trí cần triển khai.

Trong ví dụ sau, tôi đã sử dụng hệ thống tệp làm vị trí.

<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
......... 
    <distributionManagement> 
     <repository> 
     <id>internal.repo</id> 
     <name>Internal repo</name> 
     <url>file:///home/thara/testesb/in</url> 
     </repository> 
    </distributionManagement> 
............ 
</project> 

Điều tương tự có thể được thực hiện bằng lệnh sau:

mvn deploy -DaltDeploymentRepository=internal.repo::default::file:///home/thara/testesb/in 
+0

Câu trả lời của bạn khác với @khmarbaise như thế nào? – varesa