JavaProjectRepo/maven编译打包安装说明.md

72 lines
3.1 KiB
Markdown
Raw Normal View History

# Maven 编译、打包、安装说明
本文档说明在本仓库根目录下进行项目的编译、打包与安装的常用操作命令。适用于聚合构建(包含 `framework``business-css` 两个模块)。
## 环境要求
- JDK`17`
- Maven`3.6.3+`(推荐 `3.8+`
- 操作系统Windows命令在 PowerShell 下执行)
## 项目结构(聚合)
-`pom.xml``packaging=pom`,聚合模块
- 模块 `framework`artifact`com.yfd:platform:1.0`
- 模块 `business-css`artifact`com.yfd:business-css:1.0-SNAPSHOT`
## 常用全局构建
- 清理并打包所有模块(跳过测试):
- `mvn -DskipTests clean package`
- 清理并安装到本地仓库(跳过测试):
- `mvn -DskipTests clean install`
## 仅构建某个模块
- 仅构建 `framework`
- `mvn -DskipTests clean package -pl framework`
- 仅安装 `framework` 到本地仓库:
- `mvn -DskipTests install -pl framework`
- 仅构建 `business-css`,并自动构建其依赖:
- `mvn -DskipTests clean package -pl business-css -am`
- 仅安装 `business-css` 到本地仓库:
- `mvn -DskipTests install -pl business-css -am`
## 运行业务模块(开发)
- 在根目录运行 `business-css`
- `mvn -DskipTests spring-boot:run -pl business-css`
- 运行后默认端口 `8082``http://localhost:8082`
## 产物位置说明
- `framework` 模块打包产物(位于 `d:\JavaProjectSpace\framework\target\`
- 可执行(经 `spring-boot-maven-plugin` 重打包Jar`platform-1.0.jar`(名称可能包含时间戳或 SNAPSHOT
- 附加 classes Jar用于业务模块依赖`platform-1.0-plain.jar`
- `business-css` 模块打包产物(位于 `d:\JavaProjectSpace\business-css\target\`
- 可执行 Jar`business-css-1.0-SNAPSHOT.jar`
## 本地 Maven 仓库位置Windows
- `D:\maven-repository`
- 安装命令执行成功后,相关坐标将被写入该目录:
- `com\yfd\platform\1.0\platform-1.0-plain.jar`
- `com\yfd\platform\1.0\platform-1.0.jar`
- `com\yfd\business-css\1.0-SNAPSHOT\business-css-1.0-SNAPSHOT.jar`
## 业务模块对框架的依赖
- `business-css/pom.xml` 引用框架的公共 classes Jar
- 坐标:`com.yfd:platform:1.0:jar:plain`
- 构建方式一:先构建 `framework` 再构建 `business-css`
- `mvn -DskipTests clean package -pl framework`
- `mvn -DskipTests clean package -pl business-css -am`
- 构建方式二:在根目录一次性构建所有模块
- `mvn -DskipTests clean package`
## 常见问题与提示
- 如果出现依赖解析失败,优先执行 `install` 将产物写入本地仓库:
- `mvn -DskipTests clean install`
- 版本号与快照:业务模块当前为 `1.0-SNAPSHOT`,框架为 `1.0`
- 代理/网络:如需远程仓库依赖,确保 Maven 设置(`settings.xml`)配置正确
- 清理构建缓存:
- `mvn clean`
## 验证服务可用性
- 健康检查:`GET http://localhost:8082/api/simulation/ping`
- 模拟执行:`POST http://localhost:8082/api/simulation/run`
---
以上命令均在仓库根目录执行。若需在 CI 中使用,请根据环境变量与缓存策略调整 `-DskipTests` 与并发参数。