2012-04-02 185 views
3

我有幾個模塊的maven項目。需要將所有模塊(罐子和一個結果戰爭)部署到遠程Artifactory服務器。 所以在settings.xml中,我添加的配置:Maven部署錯誤

<?xml version="1.0" encoding="UTF-8"?> 
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <servers> 
    <server> 
     <username>admin</username> 
     <password>password</password> 
     <id>central</id> 
    </server> 
    <server> 
     <username>admin</username> 
     <password>password</password> 
     <id>snapshots</id> 
    </server> 
    </servers> 
    <profiles> 
    <profile> 
     <repositories> 
     <repository> 
      <id>central</id> 
      <name>libs-release</name> 
      <url>http://192.168.1.120:8088/artifactory/libs-release</url> 
     </repository> 
     <repository> 
      <snapshots /> 
      <id>snapshots</id> 
      <name>libs-snapshot</name> 
      <url>http://192.168.1.120:8088/artifactory/libs-snapshot</url> 
     </repository> 
     </repositories> 
     <pluginRepositories> 
     <pluginRepository> 
      <snapshots> 
      <enabled>false</enabled> 
      </snapshots> 
      <id>central</id> 
      <name>plugins-release</name> 
      <url>http://192.168.1.120:8088/artifactory/plugins-release</url> 
     </pluginRepository> 
     <pluginRepository> 
      <snapshots /> 
      <id>snapshots</id> 
      <name>plugins-snapshot</name> 
      <url>http://192.168.1.120:8088/artifactory/plugins-snapshot</url> 
     </pluginRepository> 
     </pluginRepositories> 
     <id>artifactory</id> 
    </profile> 
    </profiles> 
    <activeProfiles> 
    <activeProfile>artifactory</activeProfile> 
    </activeProfiles> 
</settings> 

主要POM有節:

<distributionManagement> 
    <repository> 
     <id>central</id> 
     <url>http://192.168.1.120:8088/artifactory/libs-release-local</url> 
    </repository> 
    <snapshotRepository> 
     <id>snapshots</id>   
     <url>http://192.168.1.120:8088/artifactory/libs-snapshot-local</url> 
    </snapshotRepository> 
    </distributionManagement> 

以及所有模塊1.0-SNAPSHOT版本。 但在執行命令時:>mvn deploy,出現下列錯誤:

[錯誤]未能執行目標 org.apache.maven.plugins:行家 - 部署 - 插件:2.5:部署 (默認部署)關於項目工作:部署工件失敗:可能 不能傳遞工件* project-name:project-nam * e:pom:0.0.1從/到中央 (http://192.168.1.120:8088/artifactory/libs -release-local):未能到 傳輸文件: http://192.168.1.120:8088/artifactory/libs-release-local/project-name/project-name/0.0.1/project-name-0.0.1.pom。 返回碼是:401 - > [幫助1]

如何處理?

UPDATE:

好吧,我知道了。 401錯誤說:401 =「未經授權」。所以我在settings.xml中添加了正確的用戶名/密碼。似乎現在工作。

還有最後一個問題:是的,我在版本中使用SNAPSHOT後綴?當我需要將所有模塊部署到遠程回購時,情況是否正確?如何處理這種情況,當一個模塊被破壞,我的同事需要使用此模塊的以前版本?

+0

你已經在你的pom文件中自己寫了'hhttp'。只是我猜錯了。 – 2012-04-02 09:31:22

+0

我不確定你在說模塊時意味着什麼。但是如果你的意思是像ejb耳朵測試這樣的模塊,並且它們都有自己的快照,並且那個模塊已經壞了,那麼我認爲它們可以用破碎的快照進行工作。當然,您必須將所有快照保存在您的存儲庫中,並且您必須做的就是將損壞的快照更改爲舊快照。我希望這會有所幫助。 – mbaydar 2012-04-02 10:15:19

+0

模塊 - 作爲獨立項目。 http://docs.codehaus.org/display/MAVENUSER/Multi-modules+projects。無論如何,Tnx。 – vacuum 2012-04-02 10:21:42

回答

2

這可能是因爲它寫錯了。 您可以將其更改爲http並重試。

+0

yeap,這是我的錯誤。修復了這個問題,但現在服務器返回了401錯誤。我會更新我的問題。 – vacuum 2012-04-02 09:33:08

+0

該鏈接> http://192.168.1.120:8088/artifactory/libs-release-local 工作正常,並顯示我的文件列表 和鏈接http://192.168.1.120:8088/artifactory/libs-snapshot本地工作也很好,但返回_沒有項目找到_ – vacuum 2012-04-02 09:39:33

+0

我既不能都達到。它可能只適用於本地或其可訪問性選項導致問題。我想你應該檢查第二個鏈接,看看你真的有沒有找到的文件。 – mbaydar 2012-04-02 09:44:41