构建

基本编译和测试

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

Spring Cloud 大部分构建相关的活动都使用 Maven。克隆你感兴趣的项目并输入以下命令,你应该能很快开始构建:

$ ./mvnw install
你也可以自己安装 Maven(>=3.3.3),并在下面的例子中用 mvn 命令代替 ./mvnw。如果这样做,并且你的本地 Maven 设置不包含 Spring 预发布构件的仓库声明,你可能还需要添加 -P spring 参数。
请注意,你可能需要通过设置 MAVEN_OPTS 环境变量来增加 Maven 可用的内存,其值类似于 -Xmx512m -XX:MaxPermSize=128m。我们试图在 .mvn 配置中涵盖这一点,所以如果你发现必须这样做才能使构建成功,请提出一个议题,以便将这些设置添加到版本控制中。

需要中间件(例如 Redis)进行测试的项目通常要求本地安装并运行 [Docker](www.docker.com/get-started)。

文档

spring-cloud-build 模块有一个“docs” profile,如果你启用它,它会尝试使用 Antoramodules/ROOT/ 构建 asciidoc 源文件。

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

使用代码

如果你没有特定的 IDE 偏好,我们建议你在使用代码时使用 Spring Tools SuiteEclipse。我们使用 m2eclipse Eclipse 插件来支持 Maven。只要使用 Maven 3.3.3 或更高版本,其他 IDE 和工具也应该正常工作。

激活 Spring Maven Profile

Spring Cloud 项目需要激活 'spring' Maven profile 以解析 Spring 里程碑和快照仓库。请使用你偏好的 IDE 来设置此 profile 为活动状态,否则你可能会遇到构建错误。

使用 m2eclipse 导入到 Eclipse

我们建议在 Eclipse 中使用 m2eclipse Eclipse 插件。如果你还没有安装 m2eclipse,可以从“eclipse marketplace”获取。

旧版本的 m2e 不支持 Maven 3.3,因此一旦项目导入到 Eclipse 中,你还需要告诉 m2eclipse 为项目使用正确的 profile。如果你看到许多与项目 POMs 相关的不同错误,请检查你的安装是否已更新。如果你无法升级 m2e,请将“spring” profile 添加到你的 settings.xml 文件中。或者,你可以将父 POM 中“spring” profile 的仓库设置复制到你的 settings.xml 中。

不使用 m2eclipse 导入到 Eclipse

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

$ ./mvnw eclipse:eclipse

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