构建 Scala 项目

本指南涵盖的内容 #

有关语言版本和其他构建环境特定信息,请访问我们的参考页面

macOS 环境中不可用 Scala 构建。

本指南的其余部分介绍如何在 Travis CI 中配置 Scala 项目。如果您不熟悉 Travis CI,请先阅读我们的 教程构建配置 指南。

概述 #

Travis CI 环境为 JVM 语言提供大量构建工具,包括 多个 JDK、Ant、Gradle、Mavensbt

指定 Scala 版本 #

要在构建中指定 Scala 版本

language: scala
scala:
  - 2.9.3
  - 2.10.6
  - 2.11.11
  - 2.12.2

在 Ubuntu Precise 上,要使用 Scala 2.12.X,需要通过将 jdk: oraclejdk8 添加到您的 .travis.yml 中来启用 Oracle JDK 8。

使用 sbt 的项目 #

如果您的项目在存储库根目录中具有 project 目录或 build.sbt 文件,则 Travis CI 将使用 sbt 来构建它。

感谢 paulp/sbt-extras,您的项目的 sbt 版本将被动态检测和使用。

sbt 依赖项管理 #

Travis CI 会在构建的 script 阶段运行测试之前自动下载 sbt 依赖项。

sbt 默认脚本命令 #

默认 script 命令为

sbt ++$TRAVIS_SCALA_VERSION test

运行您的测试套件。

要使用不同的 script 命令,请自定义 构建步骤

自定义 sbt 参数 #

您可以通过向 sbt 传递额外参数来覆盖 sbt 和 JVM 选项

例如,要使用不同的 JVM 参数运行 compiletest

script:
  - sbt -jvm-opts travis/jvmopts.compile ... compile
  - sbt -jvm-opts travis/jvmopts.test ... test

您还可以使用 .travis.yml 中的 sbt_args 键指定要传递给默认构建脚本的 额外参数

例如

sbt_args: -no-colors -J-Xss2m

将生成

script: sbt -no-colors -J-Xss2m ++$TRAVIS_SCALA_VERSION test

使用 Gradle、Maven 或 Ant 的项目 #

如果您的项目未配置为 sbt,则构建过程的行为类似于典型的 Java 项目

针对多个 JDK 进行测试 #

与任何 JVM 语言一样,也可以 针对多个 JDK 进行测试

使用 Java 10 及更高版本 #

有关使用 OpenJDK 和 OracleJDK 10 及更高版本的测试,请参阅 Java 文档

环境变量 #

作业正在使用的 Scala 版本可作为

TRAVIS_SCALA_VERSION

构建配置参考 #

您可以在我们的 Travis CI 构建配置参考 中找到有关 Scala 的构建配置格式的更多信息。

示例 #