Maven项目与预建jar

时间:2014-10-07 00:51:35

标签: maven

目前我没有以任何方式使用Maven,但由于我正在编写库,我希望其他开发人员能够将其用作Maven依赖项。看起来最简单的方法就是拥有一个只包含jar的Maven项目。

然而,我在pom.xml中看到的所有示例都有构建逻辑,我想知道如何将预构建的jar指定为生成的工件。

谢谢!

1 个答案:

答案 0 :(得分:0)

我不知道我是否理解正确,所以也许我正在评论完全不同的东西。

如果您想将项目作为Maven依赖项提供给其他项目,项目必须在某个地方下载(Maven中央存储库,您的公司Nexus ......),您的项目必须有一些东西可以识别它:groupId,artifactId和版本。您可以在安装工件时单独指定这些元素,也可以提供包含此元数据的pom以及依赖项(如果有)。这两种方法都解释为here

然后在项目中添加这样的东西,希望你的项目成为依赖项,它应该可以工作。

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

但是,由于您控制了这个项目,您可能需要考虑将您的库转换为Maven项目以获得Maven的其他好处(在某些IDE中,如Eclipse,有一个选项可以转换Maven项目中的常规Java项目) ,在生成的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>

从这里提取 - &gt; http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html