Java SpringBoot 项目部署
概述
Rainbond 支持构建 SpringBoot 单模块和多模块的项目,并自动识别。同时也支持通过 Gradle 构建的项目。
Java Gradle
平台默认会根据源码根目录是否有 gradlew 文件或者 build.gradle 来识别为 Java Gradle 项目.
Java Maven 单模块
当源代码根目 录下存在 pom.xml
文件,Rainbond 会将源代码识别为 Java Maven 单模块项目。
Java Maven 多模块
Rainbond 对 Maven 项目的识别是基于 pom.xml
文件的内容,主要分为两个部分:构建命令和启动命令。
- 构建命令:告诉系统需要构建哪些模块。类似于运行
mvn install -pl 'module name' -am
,其中-pl
是指定要构建的模块,-am
表示如果模块有依赖,也一并构建。 - 启动命令:构建完成后,指定执行哪个 Jar 包来启动服务。类似于
web: java $JAVA_OPTS -jar *.jar
,其中*.jar
会被替换为实际的 Jar 包名。
识别规则:
- 模块定位:首先,根据根 POM 文件中的
modules
标签找到子模块的 POM 文件。 - 打包类型:如果
pom.xml
中的packaging
标签是jar
或war
,就会提取模块名和生成的 Jar 包名。如果没有指定packaging
类型,默认认为是jar
。 - 模块名:模块名是由父 POM 文件中
module
标签的值组成,用斜杠/
分隔,比如rbd-worker/rbd-thirdparty
。 - Jar 包名:默认情况下,生成的 Jar 包名是
${artifactId}-*.jar
(其中*
表示版本号)。如果在 POM 文件中设置了finalName
,则会使用finalName
中的值。如果finalName
中使用了变量(如${project.name}
或${project.artifactId}
),就会使用变量的实际值来替换。 - POM 模块:如果 POM 中的
packaging
是pom
,并且该 POM 文件中有多个module
,则会按以上规则递归解析每个子模块。
部署 Java SpringBoot 多模块项目
- 基于源码部署组件,填写以下信息:
内容 | |
---|---|
组件名称 | 自定义 |
组件英文名称 | 自定义 |
仓库地址 | https://gitee.com/zhangbigqi/RuoYi-Vue.git |
代码版本 | Master |
- 进入多模块构建,勾选 ruoyi-admin 模块,此模块是可运行的,其他模块都是依赖项。
- 进入 组件 -> 端口 删除掉默认5000端口,添加 8080 http 端口。
- 等待构建完成即可。
部署 Java SpringBoot 单模块项目
进入到团队下,新建应用选择基于源码示例进行构建,选中 Java Maven Demo 并默认全部下一步即可。
部署 Java Gradle 项目
- 基于源码部署组件,填写以下信息:
内容 | |
---|---|
组件名称 | 自定义 |
组件英文名称 | 自定义 |
仓库地址 | https://gitee.com/rainbond/java-gradle-demo.git |
代码版本 | Master |
- 下一步全部默认,等待构建完成。