全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-23 5 分钟 ✍️ juanwangdev

mvn archetype:generate

archetype 原型模板快速创建标准 Maven 项目。

基本用法

交互模式

Bash
mvn archetype:generate

交互式选择原型,输入项目信息。

直接指定原型

Bash
mvn archetype:generate \
  -DgroupId=com.example \
  -DartifactId=my-app \
  -Dversion=1.0.0 \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DarchetypeArtifactId=maven-archetype-quickstart \
  -DinteractiveMode=false

常用原型

官方原型

archetypeArtifactId说明
maven-archetype-quickstart普通 Java 项目
maven-archetype-webappWeb 项目
maven-archetype-simple简单项目

Spring Boot 原型

Bash
mvn archetype:generate \
  -DgroupId=com.example \
  -DartifactId=spring-boot-app \
  -DarchetypeGroupId=org.springframework.boot \
  -DarchetypeArtifactId=spring-boot-sample-archetype

项目信息参数

参数说明
groupId项目组织标识
artifactId项目名称
version版本号
package包名(默认同 groupId)
archetypeGroupId原型组织标识
archetypeArtifactId原型名称
archetypeVersion原型版本
interactiveMode是否交互(false 直接生成)

生成项目结构

quickstart 原型生成结构

Bash
my-app/
├── pom.xml
├── src/
│   ├── main/
│   │   └── java/
│   │       └── com/
│   │           └── example/
│   │               └── App.java
│   └── test/
│       └── java/
│           └── com/
│               └── example/
│                   └── AppTest.java

webapp 原型生成结构

Bash
my-webapp/
├── pom.xml
├── src/
│   └── main/
│       ├── java/
│       ├── resources/
│       └── webapp/
│           ├── WEB-INF/
│           │   └── web.xml
│           └── index.jsp

查找原型

查看可用原型

Bash
mvn archetype:generate -Dfilter=spring

原型分类

Bash
org.apache.maven.archetypes      # 官方原型
org.springframework.boot         # Spring Boot
org.apache.struts                # Struts
org.apache.camel.archetypes      # Camel

自定义原型

创建原型项目

Bash
mvn archetype:create-from-project

从现有项目创建原型。

安装原型

XML
cd target/generated-sources/archetype
mvn install

使用自定义原型

Bash
mvn archetype:generate \
  -DarchetypeGroupId=com.example \
  -DarchetypeArtifactId=my-archetype \
  -DarchetypeVersion=1.0.0 \
  -DgroupId=com.client \
  -DartifactId=client-project

原型目录

internal 目录

Maven 内置原型列表。

remote 目录

Bash
mvn archetype:crawl

爬取远程原型目录。

原型配置文件

archetype-metadata.xml

定义原型生成的文件和参数。

Bash
<archetype-metadata>
  <fileSets>
    <fileSet filtered="true" packaged="true">
      <directory>src/main/java</directory>
      <includes>
        <include>**/*.java</include>
      </includes>
    </fileSet>
  </fileSets>
</archetype-metadata>

常用生成示例

普通 Java 项目

text
mvn archetype:generate \
  -DgroupId=com.example \
  -DartifactId=my-java-app \
  -DarchetypeArtifactId=maven-archetype-quickstart \
  -DinteractiveMode=false

Web 项目

text
mvn archetype:generate \
  -DgroupId=com.example \
  -DartifactId=my-webapp \
  -DarchetypeArtifactId=maven-archetype-webapp \
  -DinteractiveMode=false

Spring MVC 项目

text
mvn archetype:generate \
  -DgroupId=com.example \
  -DartifactId=spring-mvc \
  -DarchetypeGroupId=org.springframework.maven.archetypes \
  -DarchetypeArtifactId=spring-mvc-archetype \
  -DinteractiveMode=false

要点总结

  • mvn archetype:generate 使用原型创建项目
  • quickstart 原型创建普通 Java 项目
  • webapp 原型创建 Web 项目
  • -DinteractiveMode=false 直接生成
  • groupId、artifactId、version 定义项目坐标
  • 可从现有项目创建自定义原型

📝 发现内容有误?点击此处直接编辑

← 上一篇 远程仓库声明
下一篇 → mvn compile 与 clean
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库