接收"对org.json4s.JsonAST的错误符号引用..."在Eclipse Scala-IDE中使用2.11

时间:2014-07-22 00:35:12

标签: json eclipse scala scala-ide

我正在尝试使用Eclipse Scala-IDE for 2.11(从网站下载预先打包的包)。我一直在使用Scala工作表来处理返回JSON的SaaS API。我一直在推动使用String方法。我决定开始使用json4s。我去了http://mvnrepository.com/并获得了以下图书馆:

  • json4s核-2.11-3.2.10.jar
  • json4s天然-2.11-3.2.10.jar
  • paranamer-2.6.jar

我已将所有三个罐子添加到Project的Build Path中。它们出现在项目"参考图书馆"。

之下

我在Scala工作表中有以下代码:

package org.public_domain

import org.json4s._
import org.json4s.native.JsonMethods._

object WorkSheet6 {
  println("Welcome to the Scala worksheet")
  parse(""" { "numbers" : [1, 2, 3, 4] } """)
  println("Bye")
}

我收到以下两个编译错误:

  • 对类文件&package; Class'中遇到的org.json4s.JsonAST.JValue的错误符号引用。无法在值org.json4s.JsonAST中访问类型JValue。当前的类路径可能缺少org.json4s.JsonAST.JValue的定义,或者package.class可能是针对与当前类路径中找到的版本不兼容的版本编译的。
  • 对类文件&package; Class'中遇到的org.json4s.JsonAST.JValue的错误符号引用。无法在值org.json4s.JsonAST中访问类型JValue。当前的类路径可能缺少org.json4s.JsonAST.JValue的定义,或者package.class可能是针对与当前类路径中找到的版本不兼容的版本编译的。

当我查看json4s-core-2.11-3.2.10.jar文件中的org.json4s包时,实际上没有.class文件指示任何类型的编译对象JsonAST。

这是一个表明。对此的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:5)

您的类路径不完整。您缺少json4s-core的依赖关系。

  

对类文件'package.class'中遇到的org.json4s.JsonAST.JValue的错误符号引用。无法在值org.json4s.JsonAST中访问类型JValue。 当前类路径可能缺少org.json4s.JsonAST.JValue 的定义,或者package.class可能是针对与当前类路径上找到的版本不兼容的版本编译的。

使用Scala或Java库的最简单方法是使用sbt或maven。它们为您带来(传递性)依赖关系。如果您查看pom definition of json4s-core库,则会发现它取决于json4s-ast。您也应该将该jar添加到构建路径中。