2010-10-25 80 views
2

我有一個maven 1工件的大型基地,其源jar名爲app-0.0.1-src.jar。這個存儲庫用nexus轉換成maven 2視圖。 不幸的是,源代碼壇上的m2約定是「...- sources.jar」,所以我們的m1文物都沒有源代碼。maven 1源神器在maven 2/3?

是否有任何方式在nexus或以其他方式使maven 2(尤其是m2eclipse)與舊的分類器下載源?我也嘗試這樣的事情沒有成功:

<build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-dependency-plugin</artifactId> 
      <groupId>org.apache.maven.plugins</groupId> 
      <configuration> 
       <includeClassifiers>src,sources</includeClassifiers> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

回答

1

我想,如果你正在處理遺留應用程序,並不會有任何新的罐子,有足夠的解決辦法是寫循環通過信息庫中的shell腳本並且每xyz-0.0.1-src.jar創建一個符號鏈接xyz-0.0.1-sources.jar

另一種解決方案是在您的應用服務器中創建一個重寫規則,將您的mvn 1存儲庫目錄中的所有請求從*-sources.*重定向到*-src.*

+0

不幸的是,工件仍然是移動目標,我們正在從maven 1到2/3遷移50+項目,但重寫的想法可能會起作用。不幸的是,我可能需要一個用於nexus的apache前端,或者把一些servlet過濾器放到nexus戰爭中,這看起來像一個醜陋的黑客。 – mglauche 2010-10-26 07:38:15