[置顶] Maven实战—-多模块开发—缺少Jar包

Maven里面的Jar包常常出现Missing的情况,无外乎几种情况:

1、私服里面没有相应的版本号的Jar包或Jar包没写版本号

2Jar包引错了,相应的依赖关系也就错了

3、引入了依赖的Jar包,没被管理起来


       第12个问题解决起来挺简单的,第3个问题对不理解Maven的还需要解决1番。

       其实第3个问题就存在与Maven<dependencies>节点与
<dependencymanagement>节点。

                     <dependencies>节点是项目依赖,项目所依赖的Jar包;

                    <dependencymanagement>节点是多模块Maven项目开发的时候的依赖管理控制的。

         
在多模块开发的时候,利用项目继承可以将结构信息、部署信息,将共同的依赖放在1个父类中。每一个子项目的pom继承父类的pom中的依赖关系。这样就解决了所有的子项目的依赖项统1版本。所以为了项目的正确运行,必须让而在父类中将这些Jar包管理起来,在父项目的pom中定义共同的依赖关系。这就是依赖管理。

 

来看1下这两个节点的代码:

Project A

<project>
<modelVersion>4.0.0</modelVersion>
<groupId>maven</groupId>
<artifactId>A</artifactId>
<packaging>pom</packaging>
<name>A</name>
<version>1.0</version>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>test</groupId>
<artifactId>a</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>test</groupId>
<artifactId>b</artifactId>
<version>1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>test</groupId>
<artifactId>c</artifactId>
<version>1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>test</groupId>
<artifactId>d</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
</dependencyManagement>
</project>


Project B

<project>
<modelVersion>4.0.0</modelVersion>
<groupId>maven</groupId>
<artifactId>B</artifactId>
<packaging>pom</packaging>
<name>B</name>
<version>1.0</version>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>maven</groupId>
<artifactId>A</artifactId>
<version>1.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>test</groupId>
<artifactId>d</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>test</groupId>
<artifactId>a</artifactId>
<version>1.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>test</groupId>
<artifactId>c</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
</project>

区分:

         <dependencies>中的jar直接加到项目中,管理的是依赖关系(如果有父pom,pom,则子pom中只能被动接受父类的版本);<dependencyManagement>主要管理版本,对子类继承同1个父类是很有用的,集中管理依赖版本不添加依赖关系,对其中定义的版本,子pom不1定要继承父pom所定义的版本。

波比源码 – 精品源码模版分享 | www.bobi11.com
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 本站源码并不保证全部能正常使用,仅供有技术基础的人学习研究,请谨慎下载
8. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!

波比源码 » [置顶] Maven实战—-多模块开发—缺少Jar包

发表评论

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系站长
赞助VIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡