2012-07-06 65 views
2

我正在使用特定的jar庫,通過Maven供應商特定的存儲庫提供。存儲庫中只有jar文件,即沒有源文件,也沒有javadoc文件。我可以爲Maven配置源位置嗎?

但我知道,這些源可以在SVN倉庫中在線獲得。我可以告訴Maven從特定的SVN位置下載特定JAR的源代碼,並且可能來自特定的修訂版本號?

+0

如果它們不是太多的庫..你可能需要手動將它們拷貝到本地的'.m2'文件夾結構中。 – 2012-07-06 12:03:54

+0

@Rp:這通常不是一個好主意,因爲構建將不可移植(在另一臺機器上重現)。您需要在某種中央存儲庫中添加工件(如公司範圍的工件管理器,如Nexus/Artifactory /等)。 – carlspring 2012-07-06 12:06:32

回答

0

你可以做的是告訴Maven其中Repository尋找包括資源的庫。 如果來源不可用於Maven轉儲格式,則可以告訴IDE(例如Eclipse)直接從硬盤上的某個位置鏈接它們。

+0

存儲庫中沒有源代碼。 – 2012-07-06 11:56:19

+0

你有沒有在另一個'Maven' respository中找到源代碼?或者在一個不是存儲庫的地方? – adranale 2012-07-06 12:01:11

2

不,你不能告訴maven從SVN倉庫下載源代碼。 Maven期望適當的Maven倉庫中的各種工件。

0

Jars不存儲在SVN存儲庫中,它們在使用Maven時存儲在工件存儲庫中。在版本控制下保持二進制文件(如jar文件)被認爲是不好的做法。

如果你想檢查是否有一定的神器產生sourcesjavadoc神器其通過Maven的中央是可用的,那麼你可以檢查:

如果你有自己的Maven倉庫(如Nexus,Artifactory)等,你也可以使用它。

如果我的理解正確,您的問題是這些工件的來源不會顯示在您的IDE中。如果是這種情況,並且您確定它們生成了源/ javadoc工件,那麼您可以設置IDE來解決這些依賴關係。

如果你使用Eclipse,你需要沿着線的東西:

<project ...> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-eclipse-plugin</artifactId> 
       <version>2.9</version> 
       <configuration> 
        <downloadSources>true</downloadSources> 
        <downloadJavadocs>true</downloadJavadocs> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
</project> 
0

pom.xml文件,你必須設置的依賴關係,例如:

<dependency> 
     <groupId> junit </ groupId> 
     <artifactId> junit </ artifactId> 
     <scope> test </ scope> 
     <version> 4.10 </ version> 
</ dependency> 

我想您無法查看修訂版本,查找包含pom.xml的資源和依賴關係的庫。

相關問題