PureConfig ConfigLoader в Scala
Я перехожу по этой ссылке, чтобы использовать pureconfig для загрузки данных https://pureconfig.github.io/docs/overriding-behavior-for-case-classes.html. Вот мой код
import com.typesafe.config.ConfigFactory
import pureconfig._
private case class SampleConf(foo: Int, bar: String)
object TestConfigLoad {
def main(args: Array[String]): Unit = {
loadConfig[SampleConf](ConfigFactory.parseString("{ FOO: 2, BAR: two }"))
}
}
Когда я запускаю его, я получаю эту ошибку
Error:scalac: Error: scala.collection.immutable.$colon$colon.tl$1()Lscala/collection/immutable/List;
java.lang.NoSuchMethodError: scala.collection.immutable.$colon$colon.tl$1()Lscala/collection/immutable/List;
at shapeless.LazyMacros$DerivationContext$State.addDependency(lazy.scala:363)
Это записи в файле POM
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.11.7</version>
</dependency>
<dependency>
<groupId>org.scala-tools</groupId>
<artifactId>maven-scala-plugin</artifactId>
<version>2.15.2</version>
</dependency>
<dependency>
<groupId>com.github.pureconfig</groupId>
<artifactId>pureconfig_2.11</artifactId>
<version>0.8.0</version>
</dependency>
<dependency>
<groupId>org.clapper</groupId>
<artifactId>grizzled-slf4j_2.11</artifactId>
<version>1.3.3</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.9</version>
</dependency>
<dependency>
<groupId>com.lihaoyi</groupId>
<artifactId>sourcecode_2.11</artifactId>
<version>0.1.4</version>
</dependency>
1 ответ
Вы должны соответствовать версиям Scala. Невозможно смешать 2.10 (библиотека scala) и 2.11 (pureconfig_2.11).
Если у вас нет веских причин, используйте последнюю стабильную версию (в настоящее время 2.12.8)