sbt maven兼容性问题

时间:2016-12-19 08:38:10

标签: scala maven sbt maven-scala-plugin

我在这里遇到问题https://github.com/dmlc/xgboost/issues/1858

奇怪的是,甚至没有maven变量被解析

com.typesafe.akka#akka-actor_${scala.binary.version};2.3.11: not found

maven在构建过程中输出这些警告:

Expected all dependencies to require Scala version: 2.11.8
[WARNING]  com.typesafe.akka:akka-actor_2.11:2.3.11 requires scala version: 2.11.5
[WARNING] Multiple versions of scala libraries detected!

在mac硬编码上,akka依赖的scala版本似乎是一种解决方法。对于Windows或ubuntu,此解决方法不起作用。

修改

https://github.com/dmlc/xgboost/blob/master/jvm-packages/pom.xml

中的

<scala.binary.version>2.11</scala.binary.version>

<dependency>
            <groupId>com.typesafe.akka</groupId>
            <artifactId>akka-actor_${scala.binary.version}</artifactId>
            <version>2.3.11</version>
            <scope>compile</scope>
</dependency>
https://github.com/dmlc/xgboost/blob/e7fbc8591fa7277ee4c474b7371c48c11b34cbde/jvm-packages/xgboost4j/pom.xml

中的

我硬编码为

<dependency>
            <groupId>com.typesafe.akka</groupId>
            <artifactId>akka-actor_2.11</artifactId>
            <version>2.3.11</version>
            <scope>compile</scope>
</dependency>

1 个答案:

答案 0 :(得分:0)

问题是xgboost正在使用pom.xml中的属性,这些属性是在非默认的每个配置文件部分中定义的。 SBT似乎无法处理这个问题 在此处查看我的拉取请求https://github.com/dmlc/xgboost/issues/1858