在Maven中新增自定的jar包
引言: 在软件项目中,Maven提供了一体化的类库管理系统,非常实用。但是,如果新增的类库jar在网络上无法获取到,如何在本地按照Maven的规则添加进来呢?本文将通过一个小例子展示新增过程。
背景介绍:
一个Maven管理的Java项目,提供一个系统级别的POM.xml,其中定义了整个项目使用的类库。
需求:
需要添加一个自定义的类库到当前项目中。假定当前的类库文件名为:abc.jar.、
如何将类库添加进来?
1. 找到当前Maven的Repository类库位置
一般默认情况下,在window系统下是当前用户目录: C:\Users\ZhangSan. 其中ZhangSan就是系统中当前的用户名. 在Linux系统下是/home/${USER_NAME}.
在此目录下,有一个隐藏的目录.m2/repository专门用来存放Maven系统中管理的各种类库文件。
2. 假定当前abc.jar的版本为1.0
3. 在新增POM.xml中新增的Dependency片段为:
- <dependency>
- <groupId>MyLocalJar</groupId>
- <artifactId>abc</artifactId>
- <version>1.0</version>
- </dependency>
4. 在.m2/repository下需要新建的目录为:
MyLocalJar/abc/1.0/abc-1.0.jar
如果groupId为 MyLocalJar.myjar.util,则会被分解为3层的目录结构:MyLocalJar/myjar/util/1.0.
注意: 这里的abc.jar已经被新增了版本号,重名为abc-1.0.jar.
然后刷新系统就可以,正常使用了。
总结:
Maven其实遵循一个简单的原则,就是基于文件夹的层次来隔离各自的路径,groupId,arrtifactId,version都转换为了文件系统中的目录结构。对于Maven系统中的jar包本身也需要添加版本信息,例如这里的abc-1.0.
基于多版本的情况下,则会根据不同的版本,生成不同的目录,这个也是Maven在管理多版本的类包下的做法。
来源:http://blog.csdn.net/blueheart20/article/details/26565149/
在Maven中新增自定的jar包的更多相关文章
- 【Maven】从Maven中导出项目依赖的Jar包
从SVN上下载源代码 svn export https://10.200.1.201/xxxx/PLATFORM code/ --force --username xxx --password xxx ...
- 在maven中开发Spring需要的jar依赖
在maven中开发Spring需要的jar依赖 <properties> <spring.version>4.0.6.RELEASE</spring.version> ...
- 使用github作为maven仓库存放发布自己的jar包依赖 实现多个项目公共部分代码的集中,避免团队中多个项目之间代码的复制粘贴
使用github作为maven仓库存放发布自己的jar包依赖 实现多个项目公共部分代码的集中,避免团队中多个项目之间代码的复制粘贴. 1.首先在本地maven位置的配置文件setting.xml(没有 ...
- Eclipse下新建Maven项目、自动打依赖jar包
当我们无法从本地仓库找到需要的构件的时候,就会从远程仓库下载构件至本地仓库.一般地,对于每个人来说,书房只有一个,但外面的书店有很多,类似第,对于Maven来说,每个用户只有一个本地仓库,但可以配置访 ...
- maven工程打包成runnable的jar包,拷贝资源和依赖jar包
eclipse下新建maven工程,生成runnable的jar包.之前一直是手动拷贝依赖的jar包和资源文件,烦得要死.上网可劲查了一下.解决方案如下. 在pom的配置文件中做如下配置: <b ...
- maven的介绍及如何获取jar包
本文转载自 https://www.cnblogs.com/whgk/p/7112560.html 该篇文章篇幅较长,大概的思路如下 maven的介绍,初步认识,获取jar包的三个关键属性 --& ...
- 如何向Maven仓库(私服)中上传第三方jar包
本文详细介绍如何向maven仓库中上传第三方jar包. 1.在本地maven安装路径中找到conf文件夹下面的setting.xml文件,里面有访问maven仓库的路径和账号.密码: 2.浏览器打开第 ...
- maven 如何给web项目添加jar包依赖
maven 如何给web项目添加jar包依赖 CreateTime--2018年4月19日19:06:21 Author:Marydon 开发工具:eclipse 1.打开pom.xml文件--& ...
- 教你配置使用阿里云 Maven 库,体验秒下 jar 包的快感
鉴于国内的网络环境,从默认 Maven 库下载 jar 包是非常的痛苦. 速度慢就不说了,还经常是下不下来,然后一运行就是各种 ClassNotFoundException,然后你得找到残留文件删掉重 ...
随机推荐
- DNS子域授权
DNS子域授权 当一个域很大时,而且还有上,下层关系,如果所有的记录变更都由某一台服务器来管理的话,那将会是什么样子?就好比一个公司的总经理直接管理公司1000个人的所有事项,恐怕会被累死.所以会在总 ...
- python之jieba库
jieba “结巴”中文分词:做最好的 Python 中文分词组件 "Jieba" (Chinese for "to stutter") Chinese tex ...
- python第三方库之PyGraphics
有一段代码要import media,打开python自带的IDLE,输入: >>>import media 就会提示没有media这个模块! 原来media模块不是系统的标准模块, ...
- .NET微信开发Charles突破微信授权,获取任意微信网页源代码(含Https)
简介 Charles其实是一款代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的.该软件是用Java写的,能够在Windows,Mac,Linux上使用.开发iOS都在 ...
- centos7 php-apache镜像添加redis/memcache/gd/mysql_pdo/mysqli/imagick
FROM php:5.6-apache-stretch RUN /usr/local/bin/docker-php-ext-install mysqli pdo_mysql; \ && ...
- python中的文件处理
一 文件操作 (----------------------------------------------------------------------) 一 介绍 计算机系统分为:计算机硬件,操 ...
- C6678的PLL模块设置
这部分讲解的是Main PLL和 PLL Controller的配置,主要介绍怎样提供DSP核 C66X CorePac需要的工作时钟:C6678除了Main PLL,还有 DDR3 PLL.PASS ...
- Windows下安装MySQL8
转自:https://blog.csdn.net/star_in_shy/article/details/82691330 感谢! 一.MySQL官网下载 (一)MySQL下载地址:https:// ...
- java 垃圾回收总结(1)(转)
转自: http://www.cnblogs.com/aigongsi/archive/2012/04/06/2434771.html 另外可参考: http://ifeve.com/gc-orien ...
- Web 应用程序项目 Himall.Web 已配置为使用 IIS。 无法访问 IIS 元数据库
Web应用程序项目XXXX已配置为使用IIS.无法访问IIS元数据库.您没有足够的特权访问计算机上的IIS网站,xxxxiis 问题:Windows8下直接使用VS打开项目,出现问题:XXXX已配置为 ...