Building

Basic Compile and Test

Basic Compile and Test

要构建源代码,您需要安装 JDK 17。

Spring Cloud 在大多数与构建相关的活动中使用 Maven,而且,您应该能够通过克隆您感兴趣的项目并输入以下内容来快速启动:

$ ./mvnw install

您还可以自己安装 Maven(>=3.3.3)并运行 mvn,以代替以下示例中的 ./mvnw。如果您这样做,那么如果您的本地 Maven 设置不包含 Spring 预发布工件的存储库声明,您可能还需要添加 -P spring

请注意,您可能需要通过设置 MAVEN_OPTS 环境变量(值为 -Xmx512m -XX:MaxPermSize=128m)来增加可用于 Maven 的内存量。我们尝试在 .mvn 配置中涵盖这一点,因此如果您发现必须这样做才能使构建成功,请提交工单以将设置添加到源代码控制中。

通常要求在测试中需要中间件(即 Redis)的项目安装并运行本地实例的 [Docker]([role="bare"][role="bare"]https://www.docker.com/get-started)。

Documentation

spring-cloud-build 模块有一个“docs”概要文件,如果您启用它,它会尝试使用 Antora 从 modules/ROOT/ 构建 asciidoc 源代码。

作为该过程的一部分,它会查找 docs/src/main/asciidoc/README.adoc 并通过加载所有 include 来处理它,但不解析或呈现它,只将其复制到 ${main.basedir}(默认为 ${basedir},即项目的根目录)。如果 README 有任何更改,它将在 Maven 构建之后在正确的位置显示为已修改文件。只提交它并推送更改。

Working with the code

如果您没有 IDE 首选项,我们建议您在使用代码时使用 Spring Tools Suite 或 Eclipse。我们使用 m2eclipse eclipse 插件来获得 maven 支持。只要 IDE 和工具使用 3.3.3 或更高版本的 Maven,其他 IDE 和工具也应该可以正常工作。

Activate the Spring Maven profile

Spring Cloud 项目需要激活‘spring’Maven 概要文件来解析 spring 里程碑和 snapshot 存储库。使用您首选的 IDE 激活该概要文件,否则您可能会遇到构建错误。

Importing into eclipse with m2eclipse

我们建议在使用 eclipse 时使用 m2eclipse eclipse 插件。如果您尚未安装 m2eclipse,可以通过“eclipse marketplace”获得它。

旧版本的 m2e 不支持 Maven 3.3,因此一旦项目导入 Eclipse,您就还需要告知 m2eclipse 为这些项目使用正确的个人资料。如果您看到很多与项目中 POM 相关的不同错误,请检查您的安装是否是最新的。如果您不能升级 m2e,请将“spring”个人资料添加到您的 settings.xml。或者,您可以将存储库设置从父 POM 的“spring”个人资料复制到 settings.xml 中。

Importing into eclipse without m2eclipse

如果您不想使用 m2eclipse,可以使用以下命令生成 eclipse 项目元数据:

$ ./mvnw eclipse:eclipse

可以通过从 file 菜单中选择 import existing projects 导入生成的 eclipse 项目。