簡體   English   中英

Maven-需要時在哪里存儲外部jar文件

[英]maven - where to store external jar files if needed

在Maven項目中存儲jar文件的約定是什么? 我知道我應該使用maven本身下載jar,但是這次情況有所不同。 我正在上一門課程(coursera.org),我有一些應該使用的秘密jar文件,而且它不是公開的-我不會用maven下載它。 而且我確實希望將.jar文件存儲在我的私有存儲區(bitbucket)中。 問題是我應該將文件放在哪里,以便Maven項目將能夠使用此jar。

您需要將其添加到本地存儲庫。 然后將其用作其他罐子。

您可以這樣做:

mvn install:install-file -Dfile={filename}.jar -DgroupId={some.group.id} 
-DartifactId={artifact} -Dversion={version} -Dpackaging=jar

然后像這樣使用它:

<dependency>
      <groupId>{some.group.id}</groupId>
      <artifactId>{artifact} </artifactId>
      <version>{version}</version>
 </dependency>

這是執行此操作的另一種簡單方法:在項目目錄中創建基於文件的Maven存儲庫

優點: -任何人都可以簽出項目並進行Maven編譯-無需安裝存儲庫管理器

缺點: -jar將在項目目錄中

這個怎么做? 我在項目中包含ojdbc6.jar。

步驟1:將ojdbc6.jar復制到$ {project.baseDir} /lib/com/oracle/driver/ojdbc6/SNAPSHOT/ojdbc6-SNAPSHOT.jar

步驟2:在pom中添加依賴項

<dependency>
    <groupId>com.oracle.driver</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>SNAPSHOT</version>
</dependency>

步驟3:將其添加到pom。 在這里,我們要求Maven將項目目錄中的lib目錄視為Maven存儲庫。

<repositories>
    <repository>
        <id>my-repo</id>
        <name>mycustom repo</name>
        <url>file:${project.basedir}/lib</url>
     </repository>
</repositories>

步驟4:在步驟2中分析jar文件的路徑。$ {project.baseDir} /lib/com/oracle/driver/ojdbc6/SNAPSHOT/ojdbc6-SNAPSHOT.jar

  • com / oracle / driver /-groupId(必須為3個組件)
  • ojdbc6 / --artifactId
  • 快照/-版本

我們已經存儲了jar,這與maven在回購中的存儲方式非常相似。

最好的辦法是安裝一個 Artifactory,Nexus,Archiva之類的存儲庫管理器,並將此類文件存儲到存儲庫管理器中,並像往常一樣使用它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM