为什么在Scala的库中有两次定义了一些东西?

时间:2015-02-21 21:08:57

标签: scala playframework playframework-2.0 akka

我发现Scala的一些库(包括它自己的库)以一种混乱的方式组织起来,真的困扰我并使事情难以记忆。我来自.NET背景,一切都很容易拿起,而且没有"陷阱"。

我现在记得的一个例子是,当导入 Play的演员系统时,它被定义了两次:

  • play.libs.Akka
  • play.api.libs.concurrent.Akka

为什么?以及两个包play.libs和play.api.libs之间的区别是什么?

1 个答案:

答案 0 :(得分:3)

这是因为一些Scala库(包括Play)有一个Scala API和一个Java。

例:
* play.api.libs.concurrent.Akka
* play.libs.Akka

我同意Play的包裹名称可以更清晰。