19. 构建
19.1. 基本编译与测试
要构建源代码,您需要安装 JDK 17。
Spring Cloud 大多使用 Maven 进行构建相关操作,您可以通过克隆您感兴趣的项目并输入以下命令,快速上手。
$ ./mvnw install
您也可以自行安装 Maven(>=3.3.3),并在以下示例中用 mvn 替代 ./mvnw。如果您这样做,且本地 Maven 配置中未包含 Spring 预发布构件的仓库声明,则可能还需要添加 -P spring。 |
请注意,您可能需要通过设置一个 MAVEN_OPTS 环境变量来增加 Maven 可用的内存,其值可类似为 -Xmx1024m。我们已在 build 配置中尽量涵盖此情况;如果您发现必须进行此类设置才能使构建成功,请提交工单,以便将相关配置添加到源代码控制中。 |
那些需要中间件(例如 Redis)进行测试的项目通常要求本地安装并运行 [Docker](www.docker.com/get-started)。
19.2. 文档
spring-cloud-build 模块包含一个 "docs" 配置文件,若启用该配置文件,它将尝试从 src/main/asciidoc 构建 AsciiDoc 源文件。在此过程中,它会查找一个 README.adoc,并加载其中的所有包含内容,但仅复制而不进行解析或渲染,最终将其复制到 ${main.basedir}(默认值为 $/tmp/releaser-1688046617408-0/spring-cloud-kubernetes/docs,即项目的根目录)。如果 README 文件有任何更改,构建完成后,该修改后的文件将出现在正确的位置。只需提交并推送此更改即可。
19.3. 编写代码
如果您没有特定的 IDE 偏好,我们建议您在编写代码时使用 Spring Tools Suite 或 Eclipse。我们使用 m2eclipse Eclipse 插件来支持 Maven。其他 IDE 和工具只要使用 Maven 3.3.3 或更高版本,也应该可以正常工作。
19.3.1. 激活 Spring Maven 配置文件
Spring Cloud 项目需要激活 'spring' Maven 配置文件,以解析 Spring 的里程碑版本和快照仓库。请使用您偏好的 IDE 将此配置文件设置为激活状态,否则可能会遇到构建错误。
19.3.2. 使用 m2eclipse 导入到 Eclipse 中
我们推荐在使用 Eclipse 时安装 m2eclipse Eclipse 插件。如果您尚未安装 m2eclipse,它可从“Eclipse 市场”中获取。
旧版本的 m2e 不支持 Maven 3.3,因此在将项目导入 Eclipse 后,您还需告知 m2eclipse 为项目使用正确的配置文件。如果您在项目中看到许多与 POM 相关的错误,请检查您是否已安装最新版本。如果无法升级 m2e,请将 "spring" 配置文件添加到您的 settings.xml 中。或者,您可以将父 POM 的 "spring" 配置文件中的仓库设置复制到您的 settings.xml 中。 |
19.3.3. 在 Eclipse 中导入而不使用 m2eclipse
如果您不希望使用 m2eclipse,可以使用以下命令生成 Eclipse 项目元数据:
$ ./mvnw eclipse:eclipse
生成的 Eclipse 项目可以通过选择 import existing projects 从 file 菜单中导入。