2014-04-04 99 views
1

我已經使用一些插件創建了我自己的p2存儲庫。因此,我有下面的文件夾結構本地生成使用maven:將p2回購部署到Nexus

repository 
    |- plugins 
     |- myplugin1.jar 
     |- myplugin2.jar 
    |- features (empty) 
    |- artifact.jar 
    |- content.jar 

我面臨問題部署此聯繫。我想在eclipse目標平臺中使用這個URL作爲網站。 請通過指出將p2存儲庫上傳到nexus的步驟來幫助我。

我試過mvn clean deploy命令,但沒有幫助,因爲它沒有將它部署爲p2存儲庫。

回答

1

你這裏有兩種選擇:

1)不要部署檔案庫聯繫,複製並解壓縮到一個網絡服務器來代替。這是一種經典的方式,因爲您的存儲庫完全符合您的需要。

2)安裝Nexus Unzip Plugin,它使用特殊的「解壓縮」URL提供上傳的存儲庫。

作爲替代方案,您可以安裝nexus-p2-repository-plugin,它基本上可以將整個存儲庫轉換爲p2存儲庫。

-1

您還可以結合使用org.sonatype.plugins:maven-upload-plugin和Nexus nexus-unpack-plugin從Nexus上傳並分解您的更新站點zip。

  1. 安裝相應的nexus-unpack-pluginrepository.sonatype.org:只需下載bundle.zip並解壓到sonatype-work/nexus/plugin-repository。重新啓動Nexus。
  2. Unpack角色添加到您的部署帳戶。
  3. 在Nexus中創建一個Maven站點來託管您的更新站點;這些基本上是文件區域。
  4. 配置您的版本以使用org.sonatype.plugins:maven-upload-pluginm2e project就是一個很好的例子。

假設你使用的M2E網站的pom.xml作爲骨架,那麼你會調用的Maven這樣的:

mvn -Ppublish-site-latest \ 
    -Dmy.site-serverSettingsId=my-server-setting \ 
    -Dmy.site-compressed=http://localhost:8081/nexus/service/local/repositories/my-site/content.compressed \ 
    install 

你的拉鍊上傳到的Nexus的關係,解包,插件,它會將其分解到配置的位置。請注意,my.site-compressed屬性使用repositories而不是site,因爲nexus-unpack-plugin僅匹配service/local/repositories(一個錯誤?),但它對網站正常工作。

如果您收到FORBIDDEN或UNAUTHORIZED錯誤,那麼您沒有正確設置解包權限。