我有一個Apache Archiva Repo,它是爲了處理我正在處理的Maven項目的二進制依賴項而設置的;然而,該項目似乎也有一些依賴本地第三方源代碼(不確定分發許可證)。有什麼方法可以將此源放在Maven可以在需要構建時抓住它的地方?通常情況下,源代碼將存儲在SCM中,但似乎並不像我僅用於編譯的Java源文件的正確解決方案(只在編譯時需要),但不希望在我的主「/ src」目錄。評論和最佳實踐表示讚賞,我對Java Development和Maven很新穎。如何將Maven指向Java Sorce代碼依賴關係?
1
A
回答
2
可能的解決方案:
- 說服第三方項目部署與類文件的Maven中央的JAR(如果開放源代碼)
- 說服第三方項目部署與類文件的JAR到Apache Archiva回購(如果閉源,並在同一個組織)
- 說服第三方項目部署與類文件到自己的Maven倉庫管理的JAR和註冊在Apache Archiva實例回購(如封閉源和不是在同一個組織;不知道如果Apache Archiva提供這樣的功能)
- 構建JAR與類文件自己,並將其部署到Apache Archiva回購。然後聲明一個依賴於它像往常一樣
+0
因此,爲了澄清:依賴性總是必須打包? (比如變成一個.jar) –
+0
@BrandonSnider是的,至少有開箱即用的功能(jar,pom,ear,war,...)。不過,我不確定自定義組件支持什麼。 – Puce
1
您可以構建第三方源代碼的Jar文件並將其放在您的/ lib文件夾下,並在您的pom.xml文件中提供依賴關係。現在,當您構建代碼時,依賴關係將從特定jar文件。
<dependency>
<groupId>--grp id name--</groupId>
<artifactId>--artifact id--</artifactId>
<scope>system</scope>
<version>1.0</version>
<systemPath>--${basedir}\lib\{name}.jar--</systemPath> (Path of jar)
</dependency>
</dependencies>
*執行時刪除「 - - 」。
0
可以使用Build Helper Plugin,e.g:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>path to where your 3rd party source code is present</source>
...
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
相關問題
- 1. java maven rebuild依賴關係
- 2. Java Maven Jar依賴關係
- 3. Maven源代碼依賴關係
- 4. 碼頭maven依賴關係
- 5. Maven依賴關係
- 6. Maven依賴關係
- 7. NetBeans中的Maven項目:如何向「依賴關係」和「測試依賴關係」添加依賴關係?
- 8. Java源代碼依賴關係圖
- 9. 在Java代碼中複製Maven依賴關係
- 10. 源代碼依賴關係
- 11. Maven:指向多個罐子的系統依賴關係
- 12. 指定Maven擴展的依賴關係
- 13. 依賴的Maven副本依賴關係
- 14. 在Maven 2中添加JavaScript依賴關係,如Java依賴關係?
- 15. Maven依賴關係位置 - Java和Eclipse
- 16. Java依賴關係問題(Intellij/Maven)
- 17. Maven碼頭緩存依賴關係
- 18. Maven碼頭下載依賴關係
- 19. Maven如何尋找依賴關係
- 20. 如何讀取Maven依賴關係樹
- 21. 如何理解Maven依賴關係樹
- 22. AbstractHandler的Maven依賴關係
- 23. Zest Eclipse Maven依賴關係
- 24. Grails依賴關係或Maven
- 25. Pentaho maven/gradle依賴關係
- 26. Maven傳遞依賴關係
- 27. Maven - 建立依賴關係
- 28. Maven插件依賴關係
- 29. Maven依賴關係for org.apache.poi.POIXMLDocument
- 30. 瞭解Maven依賴關係
你只需要在編譯的時候,源代碼? – Puce
@Puce是的,這是正確的。 –