小编Ale*_*ndr的帖子

Intellij IDEA和SBT语法错误

我是scala和SBT的新手
我开始使用IDEA和SBT并且面临不明确的错误(表达式类型DslEntry必须符合SBT文件中的Def.SettingsDefinition)
在此输入图像描述
这是一个非常简单的带有jetty插件的空测试项目(例子来自插件站点)

这是plugins.sbt源码:

logLevel := Level.Warn

addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "2.1.0")
Run Code Online (Sandbox Code Playgroud)

此错误仅出现在IDEA GUI中.如果我编译项目 - 一切都很好.从控制台 - 一切都很好.但是当某些东西不能正常工作时我不喜欢

我试图下载最新版本的SBT并在全局IDEA属性中设置它的路径 - 问题仍然存在.

我下载了最后一个版本的scala插件,sbt插件和另一个插件的intellij IDEA EAP - 问题仍然存在.

任何人都可以帮忙解决这个问题吗?
谢谢

scala intellij-idea sbt

14
推荐指数
1
解决办法
4181
查看次数

scala case 类默认参数

我在一些源代码中遇到了以下定义:

case class Task(uuid: String = java.util.UUID.randomUUID().toString, n: Int)
Run Code Online (Sandbox Code Playgroud)

这里第一个参数声明为默认值,但我不明白如何使用这个默认值创建实例。如果我不能像那样传递第一个参数,Task(1)那么我肯定会得到编译错误。

但是,以下更改工作正常:

case class Task(n: Int, uuid: String = java.util.UUID.randomUUID().toString)
Run Code Online (Sandbox Code Playgroud)

但是,正如定义中所示,这里uuid是第一个参数。

scala

4
推荐指数
1
解决办法
3847
查看次数

玩framewoerk&scala Future(s)chain.让它更漂亮

我WSClient用来做休息请求.每个请求都返回一些Future.

结果我需要发出请求1并获取一些数据.然后,我需要做的请求2与请求结果数据1.然后我需要用来自请求2的结果的数据发出请求3.等等

在我的代码中它看起来像

def wsChain(data: Data): Future[NewData] = {
    getOne(data).flatMap(data2 => {
      getTwo(data2).flatMap(data3 => {
        getThree(data3).flatMap(data4 => {
          getFour(data4).map(result => foo(result))
        })
      })
    })
  }
Run Code Online (Sandbox Code Playgroud)

这是非常原始的样本,没有任何响应和请求的修改.但我认为即使很难阅读.我现在有关Await的Future,但它的反模式

可能我可以做得更漂亮吗?没有N个内部函数.

scala future playframework ws-client

2
推荐指数
1
解决办法
58
查看次数

标签 统计

scala ×3

future ×1

intellij-idea ×1

playframework ×1

sbt ×1

ws-client ×1