![](/img/trans.png)
[英]Can't init Scala Gradle project: -bash: gradle/gradle-5.2.1/bin/gradle: No such file or directory
[英]Gradle init project for Scala application
我想為 Scala 創建一個框架控制台應用程序,即一個單一的入口類,其主要功能是打印“Hello world”。
我能夠通過執行以下命令創建一個 Scala 庫初始化項目:
gradle init --type scala-library
但是似乎沒有 scala 應用程序在運行:
gradle init --type scala-application
不支持請求的構建設置類型“scala-application”。 支持的類型:'basic'、'groovy-application'、'groovy-library'、'java-application'、'java-library'、'pom'、'scala-library'。
Gradle 沒有 Scala 控制台應用程序模板嗎?
不,沒有 scala 應用程序模板,但是可以通過兩個步驟輕松地將生成的“scala-library”項目制作成 scala 應用程序:
例如,您添加 src/main/scala/com/example/myapp/Main.scala:
package com.example.myapp
object Main {
def main(args: Array[String]): Unit = {
println("Hello")
}
}
然后在你的 gradle.build 中添加:
apply plugin: 'application'
mainClassName='com.example.myapp.Main'
在你擁有的Java
之上,你幾乎只需要添加apply plugin: 'scala'
並將Main
更改為:
object Main extends App {
println('Hello, World!')
}
我最終就是這樣做的。
此外,如果您想要聯合編譯(並讓編譯器在同一位置理解Java
和Scala
),您可以添加以下代碼片段(每個源集一個塊: main
、 test
、 jmh
等):
sourceSets.main {
java.srcDirs = []
scala.srcDirs = ['src/main/scala', 'src/main/java']
scala.include '**/*.*'
}
sourceSets.test {
java.srcDirs = []
scala.srcDirs = ['src/test/scala', 'src/test/java']
scala.include '**/*.*'
}
從Gradle 6.7開始,現在存在scala-application
構建類型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.