2017-04-21 120 views
0

我有一個將maven生成的站點部署到nexus2存儲庫的項目。這裏是我當前的配置:Nexus 3站點部署

<distributionManagement> 
<repository> 
    <id>nexus-group</id> 
    <url>http://[some_url]/repository/[repo]-releases/</url> 
</repository> 
<snapshotRepository> 
    <id>nexus-group</id> 
    <name>Internal Snapshots</name> 
    <url>http://[some_url]/repository/[repo]-snapshots/</url> 
</snapshotRepository> 
<site> 
    <id>nexus-group</id> 
    <url>dav:http://[some_url]/repository/[repo]-site/[project]/latest/</url> 
</site> 
</distributionManagement> 

我最近更新到nexus3和創建用於部署的原料庫,但也遇到了一些問題。

  1. 看起來在創建Javadoc時,在/ target/site/apidocs目錄中創建了一個javascript文件(script.js)。爲什麼我無法將此文件上傳到原始存儲庫?構建失敗。
  2. 對於上傳的每個文件,我都有一個傳輸錯誤(即使在初始上傳時):java.io.IOException:無法創建集合:http://[some_url]/repository,狀態碼= 400。這是我的錯誤還是Nexus?假設script.js不存在,最終上傳與構建一起成功。
  3. 在nexus2內容方便地通過artifactId分組,可以鑽取到使用UI瀏覽器。我是否部署不正確,或者此功能不再可用?否則我沒有找到任何東西來告訴我。

在此先感謝。

+0

禁用嚴格的內容類型驗證讓我搬過去的script.js上傳問題。 – Floresj4

+0

此外,刪除[項目] /最新/從網站的網址取消了「無法創建收集」的錯誤。 – Floresj4

+0

對於js文件,您是否可以彈出到https://issues.sonatype.org/browse/NEXUS並提出問題?對我來說,一個javascript文件無法通過原始回購驗證(這些假設是廣泛公開的)似乎很奇怪。 – DarthHater

回答

0

你有正確添加WebDAV的jackrabit到您的Maven的網站插件配置:

<build> 
    <plugins> 
    <plugin> 
     <artifactId>maven-site-plugin</artifactId> 
     <version>3.6</version> 
     <dependencies> 
     <dependency> 
      <groupId>org.apache.maven.wagon</groupId> 
      <artifactId>wagon-webdav-jackrabbit</artifactId> 
      <version>2.12</version> 
     </dependency> 
     </dependencies> 
    </plugin> 
    </plugins> 
</build> 
+0

是的。這個項目現在一段時間沒有任何問題地部署到nexus 2倉庫。 – Floresj4

+0

部署到存儲庫是通過簡單的http(s)爲網站它應該使用WebDAV這是不同的東西...我也會首先檢查使用wagon-webdav配置爲擴展 – khmarbaise

+0

該網站已部署只是不包括某些內容,即script.js文件。該網站的網址列爲dav:http ...我可以通過提取存儲庫上的內容類型限制來部署javascript文件。 – Floresj4