Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Build org.scala stm:scala stm中存在冲突的跨版本后缀_Build_Playframework_Sbt - Fatal编程技术网

Build org.scala stm:scala stm中存在冲突的跨版本后缀

Build org.scala stm:scala stm中存在冲突的跨版本后缀,build,playframework,sbt,Build,Playframework,Sbt,最后,我有以下设置 C:在哪里玩 C:\apps\play-2.2.0\play C:\apps\play-2.2.0\play.bat C:>scala在哪里 C:\apps\scala\bin\scala C:\apps\scala\bin\scala.bat Scala-版本>Scala代码运行程序版本2.10.2——版权所有2002-2013,LAMP/EPFL 播放-版本> 使用Scala 2.10.2构建的play 2.2.0(运行Java 1.7.0_21) 这不是一个游戏应用程

最后,我有以下设置

C:在哪里玩 C:\apps\play-2.2.0\play C:\apps\play-2.2.0\play.bat

C:>scala在哪里 C:\apps\scala\bin\scala C:\apps\scala\bin\scala.bat


Scala-版本>Scala代码运行程序版本2.10.2——版权所有2002-2013,LAMP/EPFL

播放-版本>

使用Scala 2.10.2构建的play 2.2.0(运行Java 1.7.0_21)

这不是一个游戏应用程序

使用
play new
在当前目录中创建新的播放应用程序, 或者转到现有应用程序并使用
play
启动开发控制台

您还可以在浏览完整的文档


当我在播放提示下运行>重新加载、更新时,出现以下错误

[error] Modules were resolved with conflicting cross-version suffixes in     {file:/C:/<filepat>}<appname>:
[error]    org.scala-stm:scala-stm _2.10, _2.10.0
[trace] Stack trace suppressed: run last *:update for the full output.
[error] (*:update) Conflicting cross-version suffixes in: org.scala-stm:scala-stm
[error] Total time: 7 s, completed Oct 18, 2013 1:33:41 PM
[modelingApp] $
[trace] Stack trace suppressed: run last *:update for the full output.
[error] (*:update) sbt.ResolveException: unresolved dependency:       dependencyGroupId#dependencyArtifactId_2.10;dependencyVersion: not found
[error] Total time: 8 s, completed Oct 18, 2013 1:22:18 PM
[modelingApp] $
获取以下错误

[error] Modules were resolved with conflicting cross-version suffixes in     {file:/C:/<filepat>}<appname>:
[error]    org.scala-stm:scala-stm _2.10, _2.10.0
[trace] Stack trace suppressed: run last *:update for the full output.
[error] (*:update) Conflicting cross-version suffixes in: org.scala-stm:scala-stm
[error] Total time: 7 s, completed Oct 18, 2013 1:33:41 PM
[modelingApp] $
[trace] Stack trace suppressed: run last *:update for the full output.
[error] (*:update) sbt.ResolveException: unresolved dependency:       dependencyGroupId#dependencyArtifactId_2.10;dependencyVersion: not found
[error] Total time: 8 s, completed Oct 18, 2013 1:22:18 PM
[modelingApp] $

这是一个众所周知的问题:

试一试

或者,如果它是另一个依赖于播放2.1.x的库,请尝试

//replace the name and versions with that of your library
//since Scala 2.10.0 do not put the minor version into the artifact name:
//scala-stm_2.10 instead of scala-stm_2.10.0
"the lib vendor" %% "name" % "version" exclude("org.scala-stm", "scala-stm_2.10.0")
问题是,检测sbt中scala版本不匹配的唯一方法是通过此工件扩展“\u1”

这个特别的问题是,Play所依赖的scala stm版本声明它只与scala 2.10.0兼容,而您的版本则表示它可以接受2.10.x系列中的任何内容。sbt发出警告,指出这些是不同的

实际上,scala stm工件实际上是安全的,只是在发布时配置错误(我相信当时的文档错误)。因此,在这种情况下,可以安全地忽略错误。然而,总的来说,这个错误应该被认真对待。在工件上声明的不同Scala二进制版本号很可能会导致运行时错误(而不是编译时错误),从而潜入代码中

您可以使用
conflictWarning
键控制此消息的记录方式。我相信如果您想完全忽略警告(不推荐,因为大多数警告都应该是合法问题),那么您可以使用以下设置:

conflictWarning := ConflictWarning.disable

另外,我相信这是这个问题的重复:

我在从Play 2.1.*升级到Play 2.2.*时遇到了相同的错误。该项目包括secureSocial,它也需要更新以播放2.2

"securesocial" %% "securesocial" % "2.1.0"


请参见

它取决于您的scala版本,例如,我使用:

"com.typesafe.akka" % "akka-remote_2.11" % "2.3.6"
对于scala 2.11.1。
您可以从中找到合适的版本

尝试将>>>“com.typesafe.play”%%“play slick”%%“0.5.0.2-SNAPSHOT”作为appDependencies添加到build.scala中,但也没有成功。请发布整个build.sbt文件。“dependencyGroupId”等只是一个不存在的库的伪名称,用于显示哪些部分需要解析依赖项,因此当然找不到它。因为它是play app,所以它没有build.sbtadded>>>(在从其他项目加载的依赖项结束时,它工作>>>)排除(“org.scala stm”,“scala-stm_2.10.0”)@Schleichardt-针对这个问题,我们有3个项目(playApp1、sbtApp1、sbtLib)。playApp1和sbtApp1的build.sbt和build.scala文件分别包含对sbtLib库的依赖。我们是否应该排除有问题的库(scala stm)在sbtLib或sbtApp1和playApp1中?同样,它是一个Play 2.1应用程序,使用这些注释迁移到Play 2.2-这不是一个非常有用的答案。尽管忽略错误可能是安全的,但指向一些具体步骤的指针可以帮助忽略错误…嗯,尝试编辑响应。禁用的方法如下:我不建议完全关闭它们,因为大多数错误都是有效的问题。
"com.typesafe.akka" % "akka-remote_2.11" % "2.3.6"