• 基于IDEA创建Maven工程及注意事项


    Java全能学习+面试指南:https://javaxiaobear.cn

    1. 概念梳理Maven工程的GAVP

    Maven工程相对之前的项目,多出一组gavp属性,gav需要我们在创建项目的时候指定,p有默认值,我们先行了解下这组属性的含义:

    Maven 中的 GAVP 是指 GroupId、ArtifactId、Version、Packaging 等四个属性的缩写,其中前三个是必要的,而 Packaging 属性为可选项。这四个属性主要为每个项目在maven仓库中做一个标识,类似人的姓-名!有了具体标识,方便后期项目之间相互引用依赖等!

    GAV遵循一下规则:

    ​ 1) GroupID 格式:com.{公司/BU }.业务线.[子业务线],最多 4 级。

    ​ 说明:{公司/BU} 例如:alibaba/taobao/tmall/aliexpress 等 BU 一级;子业务线可选。

    ​ 正例:com.taobao.tddl 或 com.alibaba.sourcing.multilang

    ​ 2) ArtifactID 格式:产品线名-模块名。语义不重复不遗漏,先到仓库中心去查证一下。

    ​ 正例:tc-client / uic-api / tair-tool / bookstore

    ​ 3) Version版本号格式推荐:主版本号.次版本号.修订号

    ​ 1) 主版本号:当做了不兼容的 API 修改,或者增加了能改变产品方向的新功能。

    ​ 2) 次版本号:当做了向下兼容的功能性新增(新增类、接口等)。

    ​ 3) 修订号:修复 bug,没有修改方法签名的功能加强,保持 API 兼容性。

    ​ 例如: 初始→1.0.0 修改bug → 1.0.1 功能调整 → 1.1.1等

    Packaging定义规则:

    ​ 指示将项目打包为什么类型的文件,idea根据packaging值,识别maven项目类型!

    ​ packaging 属性为 jar(默认值),代表普通的Java工程,打包以后是.jar结尾的文件。

    ​ packaging 属性为 war,代表Java的web工程,打包以后.war结尾的文件。

    ​ packaging 属性为 pom,代表不会打包,用来做继承的父工程。

    2. Idea构建Maven Java SE工程

    注意:此处省略了version,直接给了一个默认值:1.0-SNAPSHOT

    自己后期可以在项目中随意修改!

    image-20231021143559114

    创建工程之后,若第一次使用maven,或者使用的是新的本地仓库,idea右下角会出现以下进度条,表示maven正在下载相关插件,等待下载完毕,进度条消失即可

    image-20231021145024505

    验证maven工程是否创建成功,当创建完毕maven工程之后,idea中会自动打开Maven视图,如下图:

    image-20231021145713433

    3. Idea构建Maven Java Web工程

    1. 手动创建

      1. 创建一个maven的javase工程

        image-20231021150134082

      2. 修改pom.xml文件打包方式

        修改位置:项目下/pom.xml

        <groupId>com.atguigugroupId>
        <artifactId>maven_webartifactId>
        <version>1.0-SNAPSHOTversion>
        
        <packaging>warpackaging>
        
        • 1
        • 2
        • 3
        • 4
        • 5
      3. 设置web资源路径web.xml路径

        点击File–>Project Structure

        image-20231021151040531

        image-20231021151627161

        image-20231021151753318

      4. 刷新和校验

        image-20231021152310802

        image-20231021151921943

    2. 插件创建

      1. 安装插件JBLJavaToWeb

        file / settings / plugins / marketplace

      2. 创建一个javasemaven工程

      3. 右键、使用插件快速补全web项目

    4. Maven工程项目结构说明

    Maven 是一个强大的构建工具,它提供一种标准化的项目结构,可以帮助开发者更容易地管理项目的依赖、构建、测试和发布等任务。以下是 Maven Web 程序的文件结构及每个文件的作用:

    |-- pom.xml                               # Maven 项目管理文件 
    |-- src
        |-- main                              # 项目主要代码
        |   |-- java                          # Java 源代码目录
        |   |   `-- com/example/myapp         # 开发者代码主目录
        |   |       |-- controller            # 存放 Controller 层代码的目录
        |   |       |-- service               # 存放 Service 层代码的目录
        |   |       |-- dao                   # 存放 DAO 层代码的目录
        |   |       `-- model                 # 存放数据模型的目录
        |   |-- resources                     # 资源目录,存放配置文件、静态资源等
        |   |   |-- log4j.properties          # 日志配置文件
        |   |   |-- spring-mybatis.xml        # Spring Mybatis 配置文件
        |   |   `-- static                    # 存放静态资源的目录
        |   |       |-- css                   # 存放 CSS 文件的目录
        |   |       |-- js                    # 存放 JavaScript 文件的目录
        |   |       `-- images                # 存放图片资源的目录
        |   `-- webapp                        # 存放 WEB 相关配置和资源
        |       |-- WEB-INF                   # 存放 WEB 应用配置文件
        |       |   |-- web.xml               # Web 应用的部署描述文件
        |       |   `-- classes               # 存放编译后的 class 文件
        |       `-- index.html                # Web 应用入口页面
        `-- test                              # 项目测试代码
            |-- java                          # 单元测试目录
            `-- resources                     # 测试资源目录
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • pom.xml:Maven 项目管理文件,用于描述项目的依赖和构建配置等信息。
    • src/main/java:存放项目的 Java 源代码。
    • src/main/resources:存放项目的资源文件,如配置文件、静态资源等。
    • src/main/webapp/WEB-INF:存放 Web 应用的配置文件。
    • src/main/webapp/index.jsp:Web 应用的入口页面。
    • src/test/java:存放项目的测试代码。
    • src/test/resources:存放测试相关的资源文件,如测试配置文件等。
  • 相关阅读:
    平台接口建设规范
    Echarts 实现将X轴放在图表顶部并且自动播放展示提示信息内容
    【考研】数据结构考点——直接选择排序
    在Vue.js中使用xlsx组件实现Excel导出
    netapp3210存储更换故障硬盘过程
    select完成服务器并发
    基于PYQT5的截图翻译工具
    Oracle update 关联更新优化方法
    IOS打包上架AppStore被驳回信息记录
    序列化单例
  • 原文地址:https://blog.csdn.net/Y_hanxiong/article/details/134452186