利用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包正常显示,项目也能正常使用。

利用Maven把项目生成jar包供其他项目使用的更多相关文章
- android studio 将自己的项目生成jar包
很多情况下我们开发的项目不是一个完整的app,而是完成一部分功能,供别人的app使用的情况.这时就需要将我们的项目打包生成jar或者arr库文件,让别人的app导入我们的jar包,就能直接使用我们项目 ...
- 【转载】JAVA SpringBoot 项目打成jar包供第三方引用自动配置(Spring发现)解决方案
JAVA SpringBoot 项目打成jar包供第三方引用自动配置(Spring发现)解决方案 本文为转载,原文地址为:https://www.cnblogs.com/adversary/p/103 ...
- Android Studio项目生成Jar包
步骤: 1)在module的gradle文件中,将apply plugin:'com.android.application'改为apply plugin:'com.android.library' ...
- 【Maven jar】打包单个或多个文件,有依赖jar包的将架包一起打包成一个jar包供别的项目引用
之前有一片文章,是打包单个java文件的.这次想要将http://www.cnblogs.com/sxdcgaq8080/p/8398780.html 打包成jar包,发现这个java文件中引用了多 ...
- 利用MAVEN打包可运行jar包,包括依赖的第三方包
转载自:http://bglmmz.iteye.com/blog/2058914 背景: 另一篇文章说了如何利用IDEA来打包,现在来说说如何利用MAVEN打包 目标:应用本身打成一个jar包,依赖的 ...
- spring boot:多模块项目生成jar包(spring boot 2.3.3)
一,多模块项目的优点: 1,为什么要使用多模块项目? 相比传统的单体工程,使用Maven的多模块配置, 有如下优点: 帮助项目划分模块,鼓励重用, 防止POM变得过于庞大, 方便某个模块的构建,而不用 ...
- JAVA SpringBoot 项目打成jar包供第三方引用自动配置(Spring发现)解决方案
本项目测试环境 JDK: 1.8 SpringBoot: 2.1 需求描述 当我们想要利用SpringBoot封装一套组件并发布给第三方使用时,我们就不得不考虑我们的组件能否被使用者正确引入使用,此处 ...
- 【maven】成功生成jar包,提示找不到主类?
问题描述: 使用maven构建zookeeper项目,完成一个简单的创建组的实例,代码调试完成,使用mvn clean install成功打包得到了jar包,但是在执行时发现使用java -cp ...
- Spring Boot项目生成jar包,并在windows服务器中注册成服务,开机启动
背景: 使用Spring Boot开发的Web项目,打包生成了一个jar包,希望能部署在Windows服务器中 尝试: 1.Spring Boot生成的jar包,可以直接用java -jar运行,但是 ...
随机推荐
- 小菜学习设计模式(三)—工厂方法(Factory Method)模式
前言 设计模式目录: 小菜学习设计模式(一)—模板方法(Template)模式 小菜学习设计模式(二)—单例(Singleton)模式 小菜学习设计模式(三)—工厂方法(Factory Method) ...
- swift 如何实现点击view后显示灰色背景
有这样一种场景,当我们点击view的时候,需要过0.几秒显示一个灰色或者别的颜色的背景 用button来实现,只有按下去的时候才会出现,往往在快速按下,快速抬起的时候是看不出这个变化的 下边是解决方案 ...
- DB2 Enterprise Server Edition(DB2 ESE)9.1在Windows Server 2008 下出现无法新建数据库的情况,及解决办法
在安装有,DB2 9.1版本的Windows Server 2008 上面,使用默认的安装方式导致无法创建数据库,相关的错误提示: "SQL3012C 发生系统错误(原因码= "& ...
- 【JAVA】基于MVC架构Java技术荟萃案例演练
基于JAVA-MVC技术的顾客管理项目案例总结 作者 白宁超 2016年6月9日22:47:08 阅读前瞻:本文源于对javaweb相关技术和资料汇总,涉及大量javaweb基础技术诸如:Servle ...
- MySQL4.0命令操作学习笔记
声明:下列内容并非原创,仅仅是最近学习笔记整理. -------------------------------------- 进入mysql安装路径bin目录下: 1.开启服务 winmysqlad ...
- js基础篇——变量
a.变量类型 变量类型 构造函数 举例 类型检测typeof 字符串 function String() var t = "chua"; var m = new String(&q ...
- Redis 学习笔记(C#)
Redis安装及简单操作 Windows下安装步骤: 1. 第一步当然是先下载咯~ 地址:https://github.com/dmajkic/redis/downloads (根据自己实际情况选择 ...
- php xml 文件读取 XMLReader
php xml 文件读取 <?php /** $xmlString = '<xml> <persons count="10"> <person ...
- luogg_java学习_12_线程
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 线程 程序.进程.线程的概念 程序:我们用程序设计语言 ...
- MySQL练习2
学习MySQL过程中做的练习题,感觉是不错的例子就记录下来. 练习要使用到的表: 表一:员工表–> yg y_id y_name y_sex y_age y_address b_id 1 赵老大 ...