【问题标题】:Conflicting cross-version suffixes akka-actor, akka-slf4j冲突的跨版本后缀 akka-actor、akka-slf4j
【发布时间】:2015-04-11 19:17:03
【问题描述】:

我正在尝试将 Kafka 添加到 Play 应用程序(使用 Typesafe Activator 版本 1.3.2)。

下面我列出了我的build.sbt 文件。我复制了如何从 Kafka's FAQ 获取 Play 应用程序的 Kafka 依赖项

build.sbt

name := """Test"""

version := "1.0-SNAPSHOT"

lazy val root = (project in file(".")).enablePlugins(PlayJava)

scalaVersion := "2.11.6"

libraryDependencies ++= Seq(
  javaJdbc,
  javaEbean,
  cache,
  javaWs
)

resolvers += "Apache repo" at "https://repository.apache.org/content/repositories/releases"

libraryDependencies ++= Seq(
  jdbc,
  anorm,
  cache,
  "joda-time" % "joda-time" % "2.2",
    "org.joda" % "joda-convert" % "1.3.1",
   "ch.qos.logback" % "logback-classic" % "1.0.13",
   "org.mashupbots.socko" % "socko-webserver_2.9.2" % "0.2.2",
   "nl.grons" % "metrics-scala_2.9.2" % "3.0.0",
   "com.codahale.metrics" % "metrics-core" % "3.0.0",
   "io.backchat.jerkson" % "jerkson_2.9.2" % "0.7.0",
   "com.amazonaws" % "aws-java-sdk" % "1.3.8",
   "net.databinder.dispatch" %% "dispatch-core" % "0.11.2",
   "org.apache.kafka" % "kafka_2.9.2" % "0.8.2.1" excludeAll (
     ExclusionRule(organization = "com.sun.jdmk"),
     ExclusionRule(organization = "com.sun.jmx"),
     ExclusionRule(organization = "javax.jms"),
     ExclusionRule(organization = "org.slf4j")
  )
)

编译时出现以下错误:

[error]    com.typesafe.akka:akka-actor _2.11, <none>
[error]    com.typesafe.akka:akka-slf4j _2.11, <none>
[trace] Stack trace suppressed: run last *:update for the full output.
[error] (*:update) Conflicting cross-version suffixes in: com.typesafe.akka:akka-actor, com.typesafe.akka:akka-slf4j

【问题讨论】:

    标签: playframework sbt apache-kafka typesafe-activator


    【解决方案1】:

    看起来那个 wiki 已经过时了,特别是没有使用 sbt 的 %% 表示法来表示基于 scala 的依赖项。

    由于您有一个 Scala 2.11.1 项目,我转而使用 %% 而不是显式的 scala 版本,并且还更新了所有依赖项(一些旧版本没有针对 Scala 2.11 的版本)。

    尝试使用这些依赖项:

    libraryDependencies ++= Seq(
      jdbc,
      anorm,
      cache,
      "joda-time"                % "joda-time"       % "2.7",
      "org.joda"                 % "joda-convert"    % "1.7",
      "ch.qos.logback"           % "logback-classic" % "1.1.3",
      "org.mashupbots.socko"    %% "socko-webserver" % "0.6.0",
      "nl.grons"                %% "metrics-scala"   % "3.4.0_a2.3",
      "io.dropwizard.metrics"    % "metrics-core"    % "3.1.1",
      "com.gilt"                %% "jerkson"         % "0.6.7",
      "com.amazonaws"            % "aws-java-sdk"    % "1.9.30",
      "net.databinder.dispatch" %% "dispatch-core"   % "0.11.2",
      "org.apache.kafka"        %% "kafka"           % "0.8.2.1" excludeAll (
         ExclusionRule(organization = "com.sun.jdmk"),
         ExclusionRule(organization = "com.sun.jmx"),
         ExclusionRule(organization = "javax.jms"),
         ExclusionRule(organization = "org.slf4j")
      )
    )
    

    【讨论】:

    • 我无法使用最新的 socko-webserver 0.6.0 和 scala 版本 2.10.5 根据sockoweb.org/download.html 我正在使用 "org.mashupbots.socko" % "socko-webserver_2.11" % “0.6.0”
    猜你喜欢
    • 2018-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-15
    • 2014-08-29
    • 2013-10-27
    • 2023-04-02
    • 2017-02-01
    相关资源
    最近更新 更多