• maven高级学习


      上一篇《maven是什么》介绍了最初级的maven学习,今天就趁着周末的大好时光一起学习下maven的高级知识吧。

      1.maven工程要导入jar包的坐标,就必须要考虑解决jar冲突

      1)解决jar包冲突的方式一:

      第一声明优先原则:哪个jar包的坐标在靠上的位置,这个jar包就是先声明的。先声明的jar包坐标下的依赖包,可以优先进入项目中。

      maven导入jar包中的一些概念:

      直接依赖:项目中直接导入的jar包,就是该项目的直接依赖包

      传递依赖:项目中没有直接导入的jar包,可以通过项目直接依赖jar包传递到项目中去。

      2)解决jar包冲突的方式二:

      路径近者优先原则。直接依赖路径比传递依赖路径近,那么最终项目进入的jar包会是路径近的直接依赖包。

      3)解决jar包冲突的方式三:(推荐使用)

      直接排除法:当我们要排除某个jar包下的依赖包,在配置exclusions标签的时候,内部可以不写版本号。因为此时依赖包使用的版本和默认和本jar包一样。

      

       2.pom.xml文件中标签的认识

      build标签是在maven中添加插件

      

       dependencyManagement标签是锁定jar包版本(标签下的jar包没有导入jar包的作用 只是锁住的作用)

      对于开发A项目者,若是引用了另一个项目B,则B中pom文件中导入的jar包会传递到A项目中,属于传递依赖,对于A项目开发者若直接导入B项目中导入的jar包 ,对于A来说,这是直接依赖,

      那么直接依赖的jar包就会把我们B项目中传递过去的jar包覆盖掉,

      为了防止该种情况出现,可以把B项目中主要的jar包锁住,那么其他依赖该项目的项目中。即使有同名jar包直接依赖,也无法覆盖。

      

       统一管理jar包的版本

      

        jar包的坐标的版本用EL表示表示

       

       3.maven私服(window环境下的安装)

      下载nexus安装包,dos窗口以管理员身份进入nexus安装包的bin目录下执行 nexus.bat install  启动 执行nexus.bat start

      进入http://localhost:8081/nexus

      账户名和密码默认是admin  admin123

      

       maven的setting文件配置自己的私服:

      

       自己的项目上传私服pom文件的配置

      

       

       从远程仓库下载jar包的settings配置

      

     

      

      

      

  • 相关阅读:
    动态规划——E (LIS())最长上升子序列
    动态规划——F 最大矩阵和
    动态规划——I 记忆化搜索
    动态规划——C编辑最短距离
    动态规划——K背包问题
    动态规划——H 最少回文串
    动态规划——G 回文串
    动态规划——J 括号配对问题
    Codeforces4D
    UVa10635
  • 原文地址:https://www.cnblogs.com/chcha1/p/12493499.html
Copyright © 2020-2023  润新知