在每次运行时播放激活器下载资源

时间:2016-05-14 13:30:32

标签: scala playframework sbt typesafe-activator playframework-2.5

我试图通过在Play框架中实现一个简单的API来学习Scala。我正在通过命令创建一个应用程序

  

activator new app play-scala

然后在app文件夹中我执行激活器运行,然后开始从互联网上下载大量数据。我在offline:=true中尝试build.sbt并使用离线版本激活器而不是最小但未成功。

[info] Loading project definition from /home/amit/Codes/scala/app/project
[info] Updating {file:/home/amit/Codes/scala/app/project/}app-build...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Set current project to app (in build file:/home/amit/Codes/scala/app/)
[info] Updating {file:/home/amit/Codes/scala/app/}root...
[info] Resolving jline#jline;2.12.1 ...
[info] downloading https://repo1.maven.org/maven2/com/typesafe/play/play-omnidoc_2.11/2.5.3/play-omnidoc_2.11-2.5.3.jar ...
[info] downloading http://repo.typesafe.com/typesafe/ivy-releases/com.typesafe.sbtrc/client-2-11/0.3.1/jars/client-2-11.jar ...
[info]  [SUCCESSFUL ] com.typesafe.sbtrc#client-2-11;0.3.1!client-2-11.jar (102499ms)
[info] downloading https://repo1.maven.org/maven2/org/scala-lang/scala-reflect/2.11.5/scala-reflect-2.11.5.jar ...
[info]  [SUCCESSFUL ] org.scala-lang#scala-reflect;2.11.5!scala-reflect.jar (136599ms)
[info] downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/serialization_2.11/0.1.0/jars/serialization_2.11.jar ...
[info]  [SUCCESSFUL ] org.scala-sbt#serialization_2.11;0.1.0!serialization_2.11.jar (12655ms)
[info] downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/io_2.11/0.13.8-M3/jars/io_2.11.jar ...

我连接速度非常慢,而且我很困惑。我不知道在scala-play中使用python-flask这么容易的事情还是我错过了什么?

1 个答案:

答案 0 :(得分:1)

通过发出activator new app play-scala激活器,只创建模板副本(通常位于〜/ .activator //模板)。当然,模板本身必须首先下载,但通常很小。

您所看到的效果是,当您运行activator run时,SBT首次解析根据模板创建的应用程序的依赖关系。有两种情况可能发生:

  1. 您的~/.ivy2目录中已有很多依赖项,例如您已经根据模板创建了项目,或者通过SBT(不严格使用激活器)投影具有相似依赖关系的项目。然后依赖关系将被解析而不是下载。
  2. ~/.ivy2中您完全没有依赖关系,或者您的模板使用了必须下载的不同版本。
  3. 你的milage可能会有所不同,但重要的一点是你的依赖关系与你的模板有关,而不是激活器本身。另一个需要注意的重要事项是,必须至少下载一次才能使用它们(这很大程度上取决于~/.ivy2目录的状态)。

    我猜您是第一次尝试activator,或者至少是play-scala模板,因此您必须等待并且肯定使用更好的互联网连接:)