栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

maven

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

maven

参考笔记
为什么要设置maven的编译级别
解决“不支持JDK版本5问题”
1.初识maven:

  • 作用:管理依赖(jar包与jar包、jar包与项目、项目与项目之间),构建项目:
  • 构建项目:清理、批量编译java代码、批量执行测试代码、报告测试结果、打包项目、将打包过后的项目安装到本地仓库、部署项目(此步骤自己操作更方便)
  • 打包分类:java程序打包成jar包,web程序打包成war包。
  • 核心概念:pom.xml(项目对象模型),约定的目录结构,坐标(gav表示资源),依赖管理,仓库管理(资源存放的位置),生命周期(项目的构建过程),插件和目标,继承,聚合。
  • 操作maven的两种方式:结合命令、工具创建
  • 项目构建工具大趋所向:gradle
  • JDK:java开发工具包
  • SDK:软件开发工具包

2.maven仓库(存放资源)

  • 远程仓库
    中央仓库(可下载相关架包)、私服、中央仓库的镜像(备份)
    中央仓库链接
  • 本地默认仓库(默认位置:C:UsersDELL.m2repository)
  • 如何修改本地仓库的位置:修改maven的根conf下的settings.xml配置文件
    3.坐标
  1. groupId:当前Maven构件隶属的组织名。groupId一般分为多段,通常情况下,第一段为域,第二段为公司名称。域又分为 org、com、cn 等,其中 org 为非营利组织,com 为商业组织,cn 表示中国。以 apache 开源社区的 tomcat 项目为例,这个项目的 groupId 是 org.apache,它的域是org(因为tomcat是非营利项目),公司名称是apache,artifactId是tomcat。(必须)

2.artifactId:项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。(必须)

  1. version:当前版本。(必须) packaging:打包方式,比如 jar,war… (必须)
  1. classifier:classifier通常用于区分从同一POM构建的具有不同内容的构件。它是可选的,它可以是任意的字符串,附加在版本号之后。

4.添加参数的作用:加快下载所需版本的速度

5.创建maven工程的步骤

  • 空项目
  • 父工程:创maven项目------删除src------在pom.xml中添加
    pom
  • 子项目(父子module常并列)
    若子继承了父无用的依赖,需pom.xml来管理,提高打包上传效率
    ?如何管理依赖
    ?如何管理依赖的版本号

父 pom.xml(maven的全局设置)


  4.0.0

  com.zuo
  maven-parent
  1.0
  
    ../maven-web-01
  

  maven-parent
  
  http://www.example.com
  
  
  //指定编译级别
    UTF-8
    1.8
    1.8
    //自定义标签,通过EL表达式引用,maven的全局设置
    4.11
    8.0.13
    2.13.3
  

  
    
      
        junit
        junit
        ${junit}
        test
      
      
        com.fasterxml.jackson.core
        jackson-core
        ${jackson}
      
      
        mysql
        mysql-connector-java
        ${mysql-version}
      
    
  

  pom


子 pom.xml




    
        maven-parent
        com.zuo
        1.0
        ../maven-parent/pom.xml
    
    4.0.0

    maven-web-01

    maven-web-01
    
    http://www.example.com
    
        ../maven-javase-01
    

    
    
        UTF-8
        1.8
        1.8
    
    
    
        
            mysql
            mysql-connector-java
        
    
    pom



6.创建maven的web项目注意事项

为你自己的JDK版本设置编译级别,设置成全局:


settings中的设置:



project Structure中的设置:

pom文件:

注意tomcat10导入的servlet和jsp的版本问题,jakarta.servlet.jsp而不是javax.servlet.jsp




    4.0.0

    com.zuo
    maven-web-02
    1.0
    war

//JDK的编译级别局部设置
    
        UTF-8
        17
        17
    


    
        
            jakarta.servlet.jsp
            jakarta.servlet.jsp-api
            3.0.0
            provided
        
        
            jakarta.servlet
            jakarta.servlet-api
            5.0.0
            provided
        

        
            junit
            junit
            4.11
            test
        
    



打包成果文件,需加入插件



    
        org.apache.maven.plugins
        maven-war-plugin
        3.2.2
    


7.maven的依赖范围

//默认compile,说明这个依赖伴随着maven项目的生命周期
compile
//test:例如junit,只在测试过程中使用依赖
test
//provided:说明这个依赖服务器已经提供,只在主程序和测试程序中用到,不会被编译
provided

8.maven资源插件的应用

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/952922.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号