玩框架2和Scala - 如何从IDEA启动测试?

时间:2012-11-21 18:08:53

标签: scala intellij-idea playframework-2.0 integration-testing

我从playframework2的示例文件夹中获得了computer-database个应用程序:

  1. cd computer-database
  2. 播放
  3. 测试
  4. 得到:所有测试通过。 (什么是好的)

    但是当尝试在IntelliJ IDEA中启动这些测试时:

    1. cd computer-database
    2. 玩意儿
    3. 从想法中打开项目
    4. 右键单击ModelSpec,然后 - >运行'Model Spec'并收到消息“没有启动的应用程序java.lang.RuntimeException:没有启动的应用程序”
    5. if:play run(rinning application),然后得到:缓存播放已经存在 net.sf.ehcache.ObjectExistsException:缓存播放已存在
    6. 如果转到localhost:9000来编译所有东西,应用evolution脚本然后得到(再次):没有启动应用程序java.lang.RuntimeException:没有启动的应用程序
    7. 问题是:如何从IDEA启动这些测试?

3 个答案:

答案 0 :(得分:3)

尝试从IDEAs类路径中删除play-source jar。

您可以在“project strucure - > Libraries”

下找到它

答案 1 :(得分:2)

我看到同样的问题缓存播放已存在net.sf.ehcache.ObjectExistsException:缓存播放已存在错误。 我没有很好的解决方案,但我设法通过将ehcacheplugin=disabled添加到application.conf文件来解决此问题。这解决了现在的问题。

答案 2 :(得分:1)

我有同样的问题,它来自以下事实:

  • 在类路径中播放两次(2.1和2.0.4)
  • 或者ehcache itseld在那里两次。

因此,在这两种情况下,可以通过检查重复项的dependencies报告并将notTransitive()添加到导入其他版本的依赖项(在您的sbt或.scala文件中)来解决问题。< / p>

注意:notTransitive()将删除所有传递分辨率,您可以使用exclude("<def>")来缩小传递分辨率,只排除其中一些 - 详尽无遗。