Maven创建Java项目实战全流程

目录

[一、初始化 Maven 项目](#一、初始化 Maven 项目)

[二、配置 pom.xml(Maven 核心文件)](#二、配置 pom.xml(Maven 核心文件))

三、项目结构调整与编码

四、构建项目

五、运行/部署

[🔑 六、总结流程](#🔑 六、总结流程)


Maven 创建 Java 项目的完整流程的流程分为 5 大阶段:初始化 → 配置 → 依赖管理 → 构建 → 运行/部署。


一、初始化 Maven 项目

  1. 选择 archetype(模板)

    Maven 项目通过 archetype 快速生成标准目录结构和基础文件。

    常用模板:

    • maven-archetype-quickstart → 普通 Java 项目(jar 包)

    • maven-archetype-webapp → Web 项目(war 包)

    • 自定义 archetype → 公司内部通用模板

  2. 创建命令示例

    复制代码
    mvn archetype:generate \
        -DgroupId=com.itranswarp.learnjava \
        -DartifactId=web-servlet-hello \
        -DarchetypeArtifactId=maven-archetype-webapp \
        -DinteractiveMode=false

    参数解释:

    • groupId:组织/公司包名基础路径

    • artifactId:项目名

    • version:版本号(默认为 1.0-SNAPSHOT

    • archetypeArtifactId:项目模板

    • interactiveMode=false:非交互式,直接生成

  3. 生成目录结构(Web 工程示例)

    复制代码
    web-servlet-hello/
    ├─ pom.xml
    ├─ src/
    │  ├─ main/
    │  │  ├─ java/         # 源代码
    │  │  └─ webapp/       # JSP、静态资源
    │  │      └─ WEB-INF/
    │  │          └─ web.xml
    │  └─ test/             # 测试代码
    └─ target/              # 构建输出

二、配置 pom.xml(Maven 核心文件)

  1. 定义基本信息

    复制代码
    <groupId>com.itranswarp.learnjava</groupId>
    <artifactId>web-servlet-hello</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>
    • packaging 决定打包类型:jarwarpom
  2. 设置编译属性

    复制代码
    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
    </properties>
  3. 添加依赖

    Maven 的强大之处在于 依赖管理

    复制代码
    <dependencies>
        <dependency>
            <groupId>jakarta.servlet</groupId>
            <artifactId>jakarta.servlet-api</artifactId>
            <version>5.0.0</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
    • Maven 会自动下载依赖及其传递依赖到本地仓库 (~/.m2/repository)

    • scope=provided:运行时由服务器提供,不打包到 war


三、项目结构调整与编码

  1. 源代码目录

    复制代码
    src/main/java    -> Java 代码
    src/main/resources -> 配置文件
    src/main/webapp  -> JSP、静态资源、WEB-INF/web.xml
    src/test/java    -> 单元测试
  2. 示例 Servlet

    复制代码
    package com.itranswarp.learnjava;
    
    import jakarta.servlet.http.*;
    import jakarta.servlet.annotation.*;
    
    @WebServlet("/hi")
    public class HelloServlet extends HttpServlet {
        protected void doGet(HttpServletRequest request, HttpServletResponse response) {
            response.setContentType("text/plain");
            response.getWriter().println("Hello, Servlet!");
        }
    }
  3. 配置 web.xml(可选,Servlet 3.0+ 可以用注解)

    复制代码
    <web-app xmlns="http://jakarta.ee/xml/ns/jakartaee" version="5.0">
    </web-app>

四、构建项目

  1. 命令

    复制代码
    mvn clean package

    阶段说明:

    • clean → 清理旧的 target 文件

    • compile → 编译源代码

    • test → 运行测试(可跳过 -DskipTests

    • package → 按 packaging 打包成 .jar.war

  2. 常用构建命令

    • mvn install → 构建并安装到本地仓库,供其他项目引用

    • mvn deploy → 上传到远程仓库(企业内部使用)

  3. 输出

    复制代码
    target/hello.war

五、运行/部署

  1. Web 工程部署

    • target/hello.war 拷贝到 Tomcat 的 webapps/

    • 启动 Tomcat

    • 浏览器访问:

      复制代码
      http://localhost:8080/hello/hi
  2. 普通 Java 工程

    • 打包成 jar:

      复制代码
      mvn clean package
      java -jar target/xxx.jar

🔑 六、总结流程

Maven 项目创建全流程(概览)

复制代码
选择 archetype → 生成基础目录结构 → 配置 pom.xml → 添加依赖
        ↓
      编写源代码 → 调整目录与资源 → 测试
        ↓
     mvn clean package → 生成可运行包
        ↓
部署/运行 → 本地/服务器
  • Maven 核心思想:标准化 + 自动化 + 依赖管理

  • 企业开发中,Maven 让多人协作、版本管理、构建部署变得可控。

相关推荐
行思理1 小时前
Lombok 新手教程
java·spring boot·lombok
一 乐1 小时前
医疗保健|医疗养老|基于Java+vue的医疗保健系统(源码+数据库+文档)
java·前端·数据库·vue.js·毕设
观望过往1 小时前
Spring Boot 集成 InfluxDB 2.x 完整技术指南
java·spring boot·influxdb
echoyu.2 小时前
java源代码、字节码、jvm、jit、aot的关系
java·开发语言·jvm·八股
彭于晏Yan3 小时前
IDEA如何进行远程Debug
java·ide
木木子99996 小时前
业务架构、应用架构、数据架构、技术架构
java·开发语言·架构
jiuweiC7 小时前
hive常用命令
hive
qq_5470261798 小时前
Flowable 工作流引擎
java·服务器·前端
鼓掌MVP9 小时前
Java框架的发展历程体现了软件工程思想的持续进化
java·spring·架构
编程爱好者熊浪9 小时前
两次连接池泄露的BUG
java·数据库