2014-10-07 69 views
1

目前我不以任何方式使用Maven,但自從我編寫一個庫以來,我希望其他開發人員能夠將其用作Maven依賴項。看起來最簡單的方法是創建一個只包含jar的Maven項目。Maven項目與預編譯罐

但是,所有我見過的pom.xml的示例都有構建邏輯,我想知道我應該如何將預構建的jar指定爲生成的構件。

謝謝!

回答

0

我不知道我是否正確理解你,所以也許我正在評論一些完全不同的東西。

如果您想將項目作爲Maven依賴項提供給其他項目,那麼該項目必須在某處下載(Maven中央存儲庫,您的公司Nexus ...),並且您的項目必須有一些可以識別的項目:groupId, artifactId和版本。您可以在安裝工件時分別指定這些工具,也可以提供包含此元數據的pom以及存在的依賴關係。這兩種方法都解釋爲here

然後在需要項目作爲依賴項目的項目中添加這樣的東西,它應該可以工作。

<dependency> 
     <groupId>group-a</groupId> 
     <artifactId>artifact-a</artifactId> 
     <version>1.0</version> 
</dependency> 

不過,因爲您可以控制這個項目,你可能要考慮你的庫轉換爲Maven項目收穫Maven的其他福利(像Eclipse使用的IDE有是轉換一個普通的Java項目中的一個選項一個Maven項目),並在生成的pom.xml中提供上面提到的信息。

這裏是一個基本的pom.xml的例子是一個jar。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.mycompany.app</groupId> 
    <artifactId>my-app</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <packaging>jar</packaging> 

    <name>Maven Quick Start Archetype</name> 
    <url>http://maven.apache.org</url> 

    <dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.8.2</version> 
     <scope>test</scope> 
    </dependency> 
    </dependencies> 
</project> 

從這裏提取 - >http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html

+0

您好,感謝回答。所以你描述的基本上是我想要的。我感到困惑的部分是在pom.xml中放置什麼,以表示我希望構建工件是某個罐子 – 2014-10-07 17:58:54

+0

@RichardFung查看添加的示例 – 2014-10-07 18:53:47

+0

嗨,感謝您的回覆。我應該把jar放到與pom.xml相同的目錄下嗎?此外,似乎沒有必要讓依賴關閉,因爲我不打算通過Maven – 2014-10-07 19:02:04