使用json时我应该使用哪些jar库

时间:2015-10-06 17:10:25

标签: java json xml gson

我对json很新,我正在尝试用java运行json。我发现了2个来自互联网的json jar文件,名为

1)java-json.jar 
2)json-lib-2.4-jdk15.jar 

如果我要使用json运行java代码,我需要包含这两个jar库或一个就足够了。 我包括两个库并尝试运行代码,我看到这个异常即将到来

NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException

我意识到这是因为缺少lib或者某些东西我不知道我应该在运行java代码时应该包含的jar文件如果它使用json 有人可以告诉我我应该使用的每个jar文件,我的代码在下面给出

public static void main(String[] args) {

        json = new JSONObject();
        map = new HashMap<String, String>();

        map.put("name", "priyamal");
        map.put("age", "21");

        json.accumulateAll(obj.map);

        printJsonStrin(json.toString());

    }


    public static void printJsonStrin(String jsonstr){
        System.out.println(jsonstr);
    }

3 个答案:

答案 0 :(得分:5)

根据Maven Repository,两个最受欢迎且功能最全的Java JSON库是:

两者的罐子都可以通过Maven访问:

  • Gson需要gson-2.4.jar(组ID {1}},工件ID com.google.code.gson
  • 杰克逊需要gson(组ID {1}},工件jackson-databind-2.6.2.jar),以及2个支持jar(com.fasterxml.jackson.core用于流解析器,jackson-databind用于注释询问服务)

你列出的罐子用于其他较少常用的包装(一个用于jackson-corehttp://json-lib.sourceforge.net/已经很老了;其他我甚至不知道它是什么),所以我不会建议你使用它们。

答案 1 :(得分:3)

NoClassDefFoundError 中缺少的类位于apache的 commons-lang.jar 中。

可以下载here

答案 2 :(得分:0)

作为Java8工作:


以下是https://javaee.github.io/jsonp/

的链接

如需更多帮助,请访问https://jsfiddle.net/Towkir/wkoyy0uf/

下载并直接添加到您的项目中。