Gson对象反序列化 - 空指针失败

时间:2014-03-27 16:32:18

标签: java json gson

我不知道为什么这不起作用。在一个不同的项目中,它可以毫无问题地处理更复杂的对象(甚至有嵌套对象)。

我是否想念一些痛苦明显的东西?

我的json在文件中的显示方式:

{
    "masterPort": 5000,
    "errorLog": "aaaa"
}

我加载json的函数的一部分:

File configFile = new File(pathToConfig);
try {
    BufferedReader br = new BufferedReader(new FileReader(configFile));
    Configuration a = gson.fromJson(br, Configuration.class); // <---- here it fails :(
} catch ( catch blocks ) { /*error handling*/ }

我的配置类:

public class Configuration {
    int masterPort = 5000;
    String errorLog = "xvdsaf";
}

堆栈跟踪这是整个事情,它让我感到困惑:

java.lang.NullPointerException
    at config.MasterConfiguration.load(MasterConfiguration.java:37)
    at config.MasterConfiguration.load(MasterConfiguration.java:30)
    at bs.Manager.loadConfiguration(Manager.java:43)
    at bs.Manager.main(Manager.java:22)

1 个答案:

答案 0 :(得分:0)

您应该初始化gson对象

Gson gson = (new GsonBuilder()).create();