Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-2408

Some maven properties are defined in build profiles only

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 0.9, 0.10.0
    • None
    • Build System
    • None

    Description

      SBT does not support resolving maven properties from parent poms which are only defined in build profiles.

      At least scala.version and scala.binary.version are only defined in profiles.
      This leads to unresolvable dependencies in SBT ...

      [warn]   https://repo1.maven.org/maven2/org/apache/kafka/kafka_${scala.binary.version}/0.8.2.0/kafka_${scala.binary.version}-0.8.2.0.pom
      [info] Resolving org.fusesource.jansi#jansi;1.4 ...
      [warn] 	::::::::::::::::::::::::::::::::::::::::::::::
      [warn] 	::          UNRESOLVED DEPENDENCIES         ::
      [warn] 	::::::::::::::::::::::::::::::::::::::::::::::
      [warn] 	:: org.apache.kafka#kafka_${scala.binary.version};0.8.2.0: not found
      [warn] 	::::::::::::::::::::::::::::::::::::::::::::::
      [warn] 
      [warn] 	Note: Unresolved dependencies path:
      [warn] 		org.apache.kafka:kafka_${scala.binary.version}:0.8.2.0
      [warn] 		  +- org.apache.flink:flink-connector-kafka:0.9.0 (/home/robert/Downloads/flink-sbt-master/build.sbt#L8-9)
      [warn] 		  +- com:flink-sbt-with-assembly:1.0 (sbtVersion=0.13, scalaVersion=2.10)
      sbt.ResolveException: unresolved dependency: org.apache.kafka#kafka_${scala.binary.version};0.8.2.0: not found
      	at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:291)
      	at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:188)
      	at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:165)
      	at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:155)
      	at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:155)
      	at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:132)
      	at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:57)
      	at sbt.IvySbt$$anon$4.call(Ivy.scala:65)
      	at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:93)
      	at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:78)
      	at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:97)
      	at xsbt.boot.Using$.withResource(Using.scala:10)
      	at xsbt.boot.Using$.apply(Using.scala:9)
      	at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:58)
      	at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:48)
      	at xsbt.boot.Locks$.apply0(Locks.scala:31)
      	at xsbt.boot.Locks$.apply(Locks.scala:28)
      	at sbt.IvySbt.withDefaultLogger(Ivy.scala:65)
      	at sbt.IvySbt.withIvy(Ivy.scala:127)
      	at sbt.IvySbt.withIvy(Ivy.scala:124)
      	at sbt.IvySbt$Module.withModule(Ivy.scala:155)
      	at sbt.IvyActions$.updateEither(IvyActions.scala:165)
      	at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1369)
      	at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1365)
      	at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$87.apply(Defaults.scala:1399)
      	at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$87.apply(Defaults.scala:1397)
      	at sbt.Tracked$$anonfun$lastOutput$1.apply(Tracked.scala:37)
      	at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1402)
      	at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1396)
      	at sbt.Tracked$$anonfun$inputChanged$1.apply(Tracked.scala:60)
      	at sbt.Classpaths$.cachedUpdate(Defaults.scala:1419)
      	at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1348)
      	at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1310)
      	at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
      	at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
      	at sbt.std.Transform$$anon$4.work(System.scala:63)
      	at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226)
      	at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226)
      	at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
      	at sbt.Execute.work(Execute.scala:235)
      	at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
      	at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
      	at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
      	at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      	at java.lang.Thread.run(Thread.java:745)
      [error] (*:update) sbt.ResolveException: unresolved dependency: org.apache.kafka#kafka_${scala.binary.version};0.8.2.0: not found
      [error] Total time: 25 s, completed Jul 27, 2015 10:33:23 AM
      
      

      For users facing the issue right now, there is the following workaround

      val flinkVersion = "0.9.0"
      libraryDependencies ++= Seq("org.apache.flink" % "flink-scala" % flinkVersion, "org.apache.flink" % "flink-clients" % flinkVersion)
      libraryDependencies += "org.apache.flink" % "flink-connector-kafka" % flinkVersion exclude("org.apache.kafka", "kafka_${scala.binary.version}")
      libraryDependencies += "com.101tec" % "zkclient" % "0.5"
      libraryDependencies += "org.apache.kafka" %% "kafka" % "0.8.2.0"
      

      Attachments

        Activity

          People

            rmetzger Robert Metzger
            rmetzger Robert Metzger
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: