利用Maven把项目生成jar包供其他项目使用

  每当搭建框架时,第一步就是为系统整理一个接一个的jar包。用多了就开始深思,如何把自己的项目也整成jar包,供他人使用呢?

  近期一直在看徐晓斌所著:《Maven实战》。因自己学识不够,只是简单理解了一些,但也受益颇深。

  下面介绍如何利用Maven把项目生成jar包:

1:利用eclipse搭建一个maven项目。(简单描述pom.xml配置)

<?xml version="1.0" encoding="UTF-8"?> <!-- 指定Xml文档的版本和编码方式 -->
<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"> <!-- 声明POM相关的命名空间及Xsd元素 -->
    <modelVersion>4.0.0</modelVersion>  <!-- 指定当前POM模型的版本 -->
    <groupId>com.gcs</groupId>  <!-- 定义项目属于哪个组,与所属组织或公司关联 -->
    <artifactId>AllUtil</artifactId>  <!-- 标识当前项目ID -->
    <version>0.0.1-SNAPSHOT</version> <!-- 指定当前的版本  SNAPSHOT为快照,标志处于开发中 -->
    <packaging>jar</packaging> <!-- 定义生成格式,若要运行web,需改为war -->

    <name>AllUtil</name> <!-- 声明更友好的项目名称(非必须) -->
    <url>http://maven.apache.org</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <junitversion>4.12</junitversion> <!-- 全局变量定义版本,以方便统一管理 -->
    </properties>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${junitversion}</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>

2:在项目开发时,pom.xml中<packaging>设置为war,鼠标点击pom.xml,右键,Run As选择 Maven clean,清理生成的war包,然后选择Maven install,重新加载(先clean,是防止修改的程序没有生效。)

3:项目开发结束后,把pom.xml中<packaging>设置为jar。重复第二步,会在target下,看到生成的AllUtil-0.0.1-SNAPSHOT.jar包。

  (1)若项目为普通项目,可直接把该jar包放入lib下,导入项目中即可使用。

  (2)若项目为maven项目,则需要把jar包放入本地的maven仓库:

    当项目运行Maven install时,maven自动会把jar包自动保存至本地仓库(本地为*\.m2\repository\com\gcs)。

    当新项目需要用到时只需要在pom.xml的<dependencies></dependencies>中配置如下,即可使用

     <dependency>
            <groupId>com.gcs</groupId>
            <artifactId>AllUtil</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>

    注意:当完成上面的操作,打开项目中 Maven Dependencies,发现导出的jar包呈现文件夹模样。如下图所示,此原因是因为AllUtil项目还为可运行项目,把AllUtil项目关闭后,jar包正常显示,项目也能正常使用。

 

posted @ 2015-11-25 15:30  sky_烁  阅读(9556)  评论(0编辑  收藏  举报