gpt4 book ai didi

java - 渐变 :compilePlayBinaryPlayRoutes is not generating all imports

转载 作者:搜寻专家 更新时间:2023-11-01 02:37:28 28 4
gpt4 key购买 nike

我正在将 Play 应用程序从 SBT 切换到 gradle,并且没有生成路由和反向路由 scala 文件

import _root_.play.libs.F

这是造成

build/src/play/binary/routesScalaSources/controllers/ReverseRoutes.scala:260: not found: value F
def validate(accountId:F.Option[java.lang.Long]): Call = {

我使用的是 gradle 3.5,play:'2.4.8',scala:'2.11' 和 java:'1.8'。有谁知道是否存在兼容性问题或其他一些已知问题会阻止将导入添加到生成的 scala 文件中?

** 编辑 **

我发现这个类 RoutesCompile 有一个方法 additionalImports 但我找不到如何在 build.gradle 文件中使用它。 (我是 gradle 的 super 新手,更像是一个行家)

** 编辑 2 **

基于 RoutesCompile 中的 Javadoc类似乎我应该像这样将它添加到模型中:

model {
components {
play {
platform play: '2.4.8', scala: '2.11', java: '1.8'
injectedRoutesGenerator = true
additionalImports = ['play.libs.F']
sources {
twirlTemplates {
defaultImports = TwirlImports.JAVA
source.srcDir "assets/views"
source.exclude "assets/stylesheets"
}
}
}
}
}

但是我得到以下错误:

> Exception thrown while executing model rule: play { ... } @ build.gradle line 147, column 9
> No such property: additionalImports for class: org.gradle.play.PlayApplicationSpec

最佳答案

我终于找到了问题的答案。我需要获取任务并以这种方式添加额外的导入。

model {
components {
play {
platform play: '2.4.8', scala: '2.11', java: '1.8'
injectedRoutesGenerator = true
tasks.withType(RoutesCompile) {
additionalImports = ['play.libs.F']
}

sources {
twirlTemplates {
defaultImports = TwirlImports.JAVA
source.srcDir "assets/views"
source.exclude "assets/stylesheets"
}
}
}
}
}

关于java - 渐变 :compilePlayBinaryPlayRoutes is not generating all imports,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44208911/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com