用Gradle创建Scala项目

简介: Scala是一门强大的语言,受到很多人的喜爱,我也曾经尝试学习过。不过Scala官网专用的构建工具SBT就不那么好用了。我曾经想将SBT的软件包保存路径设置到D盘,还想设置网络代理,不过最后都没搞明白怎么回事。

Scala是一门强大的语言,受到很多人的喜爱,我也曾经尝试学习过。不过Scala官网专用的构建工具SBT就不那么好用了。我曾经想将SBT的软件包保存路径设置到D盘,还想设置网络代理,不过最后都没搞明白怎么回事。相信也有很多同学想学习Scala,但是却被SBT挡在了门外。偶然之下我发现现在Gradle增加了scala插件,可以完美支持Scala项目。所以就来赶紧介绍一下。本文参考自官方文档,另外还需要读者对Gradle有所了解,不需要会编写什么复杂脚本,但是最起码得能读懂配置文件。

首先添加Scala的插件,该插件会添加几个任务,这些任务可以在IDEA的Gradle视图中看到。

apply plugin: 'scala'

目前IDEA好像还没有太多对该插件的支持,所以不会像kotlin那样,你添加插件声明,IDEA就会自动创建kotlin那几个文件夹。Scala的这几个文件夹还需要我们自己创建,具体就是src/main/scalasrc/test/scala。将来Scala文件需要放在这两个文件夹中。当然如果你想自定义的话也是可以的。

sourceSets {
    main {
        scala {
            srcDirs = ['src/scala']
        }
    }
    test {
        scala {
            srcDirs = ['test/scala']
        }
    }
}

仅仅启用这个插件还是不行的,我们还需要指定scala的运行库。如果你只想在测试代码中使用Scala,就将scala-library这个包设置为testCompile的。如果需要其他版本的Scala运行库,从mvnrepository.com搜索就可以了。

repositories {
    mavenCentral()
}

dependencies {
    // https://mvnrepository.com/artifact/org.scala-lang/scala-library
    compile group: 'org.scala-lang', name: 'scala-library', version: '2.12.4'
    // https://mvnrepository.com/artifact/org.scalatest/scalatest
    testCompile group: 'org.scalatest', name: 'scalatest_2.12', version: '3.0.4'
    testCompile group: 'junit', name: 'junit', version: '4.12'
}

这样一来,我们就可以利用Gradle来运行Scala项目了,我试了一下,确实非常舒服,也许是由于我对SBT不熟悉的缘故,我感觉Gradle用起来顺手太多了。大家可以试试。官方文档对于这部分还有更多介绍,有兴趣的可以进一步了解。

相关文章
|
Scala
176 Scala 项目案例(项目实现)
176 Scala 项目案例(项目实现)
116 0
|
并行计算 Scala
175 Scala 项目案例(Akka简介)
175 Scala 项目案例(Akka简介)
108 0
|
分布式计算 Hadoop Scala
174 Scala 项目案例(需求分析)
174 Scala 项目案例(需求分析)
45 0
|
Java Spring
在idea中创建spring boot的Gradle项目并启动(有一个小demo)(二)
在idea中创建spring boot的Gradle项目并启动(有一个小demo)(二)
955 1
|
Java Spring
在idea中创建spring boot的Gradle项目并启动(有一个小demo)(三)
在idea中创建spring boot的Gradle项目并启动(有一个小demo)(三)
233 1
|
4月前
|
Java Maven 开发者
gradle项目对比maven项目的目录架构以及对gradle wrapper的理解
gradle项目对比maven项目的目录架构以及对gradle wrapper的理解
44 0
|
5月前
Gradle项目加速构建
Gradle项目加速构建
344 0
|
5月前
|
Java API Maven
Gradle 自动化项目构建-Gradle 核心之 Project
Gradle 自动化项目构建-Gradle 核心之 Project
59 0
|
6月前
|
Java Spring
使用Gradle创建SpringBoot项目
使用Gradle创建SpringBoot项目
437 0
|
6月前
|
Java 测试技术 API
云效流水线构建gradle项目失败提示gradle版本过低如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
326 0