scala play sbt 配置简单教程
Posted
技术标签:
【中文标题】scala play sbt 配置简单教程【英文标题】:scala play sbt configuration for simple tutorial 【发布时间】:2016-06-17 19:44:17 【问题描述】:我正在尝试构建我的第一个游戏应用。我正在关注(播放教程中的视频https://www.playframework.com/),但我遇到了 sbt 文件的问题。
sorm
生成 SBT 版本冲突。
name := """gig"""
version := "1.0-SNAPSHOT"
lazy val root = (project in file(".")).enablePlugins(PlayScala)
scalaVersion := "2.11.7"
libraryDependencies ++= Seq(
jdbc,
cache,
ws,
"org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % Test
)
//libraryDependencies += "org.sorm-framework" % "sorm" % "0.3.19"
resolvers += "scalaz-bintray" at "http://dl.bintray.com/scalaz/releases"
如果我添加以下内容,我还会收到未解决的存储库错误:
libraryDependencies += "com.h2database" % "h2" % "1.3.148"
我该如何解决这两个问题?
编辑:
这是错误:
Error:Error while importing SBT project:<br/>...<br/><pre>[info] Resolving com.typesafe.play#play-doc_2.11;1.2.2 ...
[info] Resolving org.pegdown#pegdown;1.4.0 ...
[info] Resolving org.parboiled#parboiled-java;1.1.5 ...
[info] Resolving org.parboiled#parboiled-core;1.1.5 ...
[info] Resolving org.ow2.asm#asm;4.1 ...
[info] Resolving org.ow2.asm#asm-tree;4.1 ...
[info] Resolving org.ow2.asm#asm-analysis;4.1 ...
[info] Resolving org.ow2.asm#asm-util;4.1 ...
[info] Resolving org.scala-lang#scala-compiler;2.11.7 ...
[info] Resolving org.scala-lang.modules#scala-xml_2.11;1.0.4 ...
[info] Resolving jline#jline;2.12.1 ...
[info] Done updating.
[error] Modules were resolved with conflicting cross-version suffixes in file:/Users/donbeo/Documents/scala_code/gig/root:
[error] org.scala-lang.modules:scala-xml _2.11, _2.12.0-M4
[error] org.scala-lang.modules:scala-parser-combinators _2.11, _2.12.0-M4
[trace] Stack trace suppressed: run 'last *:update' for the full output.
[trace] Stack trace suppressed: run 'last *:ssExtractDependencies' for the full output.
[error] (*:update) Conflicting cross-version suffixes in: org.scala-lang.modules:scala-xml, org.scala-lang.modules:scala-parser-combinators
[error] (*:ssExtractDependencies) Conflicting cross-version suffixes in: org.scala-lang.modules:scala-xml, org.scala-lang.modules:scala-parser-combinators
[error] Total time: 26 s, completed Jun 17, 2016 10:34:45 PM</pre><br/>See complete log in <a href="/Users/donbeo/Library/Logs/IntelliJIdea2016.1/sbt.last.log">/Users/donbeo/Library/Logs/IntelliJIdea2016.1/sbt.last.log</a>
这是播放版addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.5.4")
【问题讨论】:
你能发布你得到的错误吗?你用的是什么播放版本? @OniltonMaciel 我添加了一些信息 【参考方案1】:似乎名为 embrace 的 sorm
依赖项有点搞砸了。
由于配置错误,它总是要求提供最新版本的 scala,并且自从 scala 2.12“测试版”发布以来,他要求提供这些。
这里描述了相同的问题:
Why do I get conflicting cross-version in sbt on one environment but not another?
要解决您的问题,您需要强制使用 scala 版本:
dependencyOverrides += "org.scala-lang" % "scala-compiler" % scalaVersion.value
(可以放在 build.sbt 文件的末尾)
然后我们需要为 sorm 清除 ivy2 缓存:
rm -r ~/.ivy2/cache/org.sorm-framework/sorm/
现在运行
sbt update
我的建议是让你以冷静或拥抱的方式提出一个关于此的问题。
【讨论】:
我会将这个问题链接到 sorm。 sorm 现在正在工作。 h2 呢? h2 从来没有这个问题,它现在应该可以工作了。尝试使用它。 我认为它正在工作。 H2不再抱怨了。如果我添加问题,我将重新打开问题。非常感谢。以上是关于scala play sbt 配置简单教程的主要内容,如果未能解决你的问题,请参考以下文章
升级 Play/Scala/SBT/jOOQ/HSQLDB 应用程序时出错
如何设置 sbt/scala/play 多模块项目,该项目将与 Intellij scala 插件一起正常工作
如何将 Play 2.2 Scala 应用程序创建为 SBT 子项目