小编wn-*_*wn-的帖子

在使用sbt和testng时,如何获得测试中抛出的异常的完整堆栈跟踪?

堆栈跟踪被截断 - 例如它们以 [info] ...

使用last或更改traceLevel没有帮助 - 它只是打印sbt包装器的完整堆栈跟踪.

这是用testng测试的(我也相信使用scalatest和sl4j)

testng scala slf4j sbt scalatest

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

如何从repl访问scala文档?

首先是内置文档,也是我自己的代码.

具体来说,我希望获得类似于python中的信息,您可以在方法或对象上调用help()来获取有关打印到repl中的对象的信息.

scala read-eval-print-loop

30
推荐指数
1
解决办法
2398
查看次数

如何在emacs中缩进n个空格?

我想缩进和整个区域n向右或向左的空格.我可以在Cc>和Cc <的某些模式下执行此操作,但我想一般这样做.

如果我需要更改我的.emacs以使其高效(使用上面的键盘快捷键)那很好.

emacs

25
推荐指数
4
解决办法
7098
查看次数

如何在scala中声明抽象对象值和方法?

我想指定一次动物颜色,并且对于同一物种的所有动物都是相同的.

所以我想做:

abstract object Animal {val color: String}
Run Code Online (Sandbox Code Playgroud)

然后用个别动物指定颜色

object Dog extends Animal {val color = "green"}
Run Code Online (Sandbox Code Playgroud)

这需要在对象中,因为我已经有了一个不能更改的约定,只能在Animal对象中声明使用工厂方法生成动物,并且工厂方法需要访问颜色.例如

abstract object Animal {
   val color: String
   def makeAnimal(args): Animal = ...
}
Run Code Online (Sandbox Code Playgroud)

我如何在scala中实际执行此操作,因为"只有类可以声明但未定义的成员"?

我可以想到一种使用特征来做这个的hacky方法,但我希望有更好的东西.

[编辑]所以事实证明,由于复杂的原因,我无法使用特征来保存值/方法.当前解决方案涉及使用特征静态地向父对象注册子对象,这允许我访问必须在对象中定义的非特征值和方法.我仍然希望有更好的解决方案.

scala

5
推荐指数
1
解决办法
5754
查看次数

是否有一些东西可以放在你的代码中启动一个交互式的interperter(在python中)

我们的想法是能够正常运行代码,除非它在到达特定方法调用时将在给定范围内启动交互式解释器.类似于在断点处停止以运行代码.

理想情况下,如果您已经在像ipython这样的解释器中,它将返回到该解释器,除了访问解释器范围之外的当前范围.

python debugging

4
推荐指数
2
解决办法
75
查看次数