当我和一个项目一起工作时,我遇到了麻烦,然后切换到另一个项目,过了一段时间,我又回到了第一个项目。
奇怪的是,在返回旧项目之后,为什么JSON解析不再像以前那样工作了。
它是一个maven项目,所有的依赖项都和以前一样。
因此,发生的情况是,例如,我的IntelliJ不再识别URL-s了,之前来自控制台的图像:

现在:

如您所见,URL-s是蓝色和可点击的,现在是纯文本。
另外,在解析JSON数组时,我之前能够这样做:
number = jsonArray.getJSONObject(0).getString("version");它会返回一个字符串,但是现在发生的情况是,我得到了一个错误:
INFO: org.json.JSONException: JSONObject["version"] not a string.我正在使用这些进口产品:
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;我知道现在似乎很模糊,但你可以再问一些问题。
编辑:JSON中的行:
version: 36928,发布于 2016-10-11 14:14:10
不同的是JDK版本和位模式。我安装了一些更新的JDK和64位,另一台有旧的JDK和32位。我不完全清楚,是什么不同并导致了问题,但现在又开始起作用了。
谢谢大家!
发布于 2016-10-11 14:47:35
尝试使用杰克逊ArrayNode和ObjectNode而不是JSONArray和JSONObject。
ObjectMapper mapper = new ObjectMapper();
ArrayNode arrayNode = mapper.createArrayNode();
Object obj = new Object();
arrayNode.add(mapper.createObjectNode().put("version", "Hello Stack!"));
arrayNode.addPOJO(obj);
arrayNode.get(0).get("version");此外,最好使用Maven依赖项来包含jackson:
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>${jackson.version}</version>
</dependency>医生来了:http://fasterxml.github.io/jackson-databind/javadoc/2.0.0/com/fasterxml/jackson/databind/node/ArrayNode.html
https://stackoverflow.com/questions/39978354
复制相似问题