本文目录导读:

我来为你详细说明Java Maven项目的构建和执行方法:
Maven基本构建命令
最常用的构建命令
# 清理并构建项目(最常用) mvn clean package # 只编译 mvn compile # 清理并编译 mvn clean compile # 跳过测试构建 mvn clean package -DskipTests # 安装到本地仓库 mvn clean install
构建典型案例
案例1:普通Java项目构建
项目结构:
my-project/
├── pom.xml
├── src/
│ ├── main/
│ │ └── java/
│ │ └── com/example/
│ │ └── App.java
│ └── test/
│ └── java/
│ └── com/example/
│ └── AppTest.java
pom.xml:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>my-project</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies>
<!-- JUnit测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 编译插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
</plugin>
<!-- JAR包插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<mainClass>com.example.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
</project>
执行构建:
# 1. 清理并构建 mvn clean package # 2. 运行生成的JAR包 java -jar target/my-project-1.0-SNAPSHOT.jar # 3. 或者使用exec插件直接运行 mvn exec:java -Dexec.mainClass="com.example.App"
案例2:Spring Boot项目构建
pom.xml:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.0</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
构建并运行:
# 构建 mvn clean package # 运行Spring Boot应用 java -jar target/spring-boot-app-1.0.0.jar # 或使用Maven插件直接运行 mvn spring-boot:run
分步构建过程
完整的生命周期命令
# 1. 清理 mvn clean # 2. 编译 mvn compile # 3. 运行测试 mvn test # 4. 打包 mvn package # 5. 安装到本地仓库 mvn install # 6. 部署到远程仓库 mvn deploy
常用选项
# 跳过测试 mvn package -DskipTests # 跳过测试编译和执行 mvn package -Dmaven.test.skip=true # 指定配置文件 mvn clean package -P production # 离线模式(不使用网络下载依赖) mvn clean package -o # 调试模式 mvn clean package -X # 多线程构建 mvn clean package -T 4
实际执行示例
步骤1:创建新项目
# 使用Maven原型创建项目
mvn archetype:generate \
-DgroupId=com.example \
-DartifactId=my-app \
-DarchetypeArtifactId=maven-archetype-quickstart \
-DarchetypeVersion=1.4 \
-DinteractiveMode=false
# 进入项目目录
cd my-app
步骤2:执行构建
# 编译 $ mvn compile [INFO] Scanning for projects... [INFO] Building my-app 1.0-SNAPSHOT [INFO] --- maven-resources-plugin:3.0.2:resources (default-resources) @ my-app --- [INFO] --- maven-compiler-plugin:3.8.0:compile (default-compile) @ my-app --- [INFO] BUILD SUCCESS # 测试 $ mvn test [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] BUILD SUCCESS # 打包 $ mvn package [INFO] Building jar: /path/to/my-app/target/my-app-1.0-SNAPSHOT.jar [INFO] BUILD SUCCESS
步骤3:运行应用
# 直接运行JAR java -cp target/my-app-1.0-SNAPSHOT.jar com.example.App # 或者用Maven exec插件 mvn exec:java -Dexec.mainClass="com.example.App"
常见问题解决
依赖下载失败
# 清理本地仓库特定依赖
rm -rf ~/.m2/repository/com/example/
# 更新快照依赖
mvn clean install -U
# 使用阿里云镜像(修改~/.m2/settings.xml)
<mirror>
<id>aliyunmaven</id>
<mirrorOf>central</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
构建错误排查
# 显示详细错误信息 mvn clean package -X # 检查依赖树 mvn dependency:tree # 分析依赖冲突 mvn dependency:resolve -Dverbose=true
多模块项目构建
父pom.xml:
<modules>
<module>module-a</module>
<module>module-b</module>
</modules>
构建命令:
# 构建所有模块 mvn clean install # 构建特定模块及其依赖 mvn install -pl module-a -am # 构建并跳过依赖模块的测试 mvn install -pl module-a -am -DskipTests
构建输出说明
构建成功后,你会看到:
target/目录包含编译后的class文件target/*.jar或target/*.war是打包后的文件- 控制台输出
BUILD SUCCESS表示构建成功
按照这些步骤,你就可以成功执行Java Maven项目的构建了!