【问题标题】:Cannot use JSONObject and JSONException in openjdk-1.8.0无法在 openjdk-1.8.0 中使用 JSONObject 和 JSONException
【发布时间】:2018-05-28 04:51:57
【问题描述】:

我正在尝试在 Java 中创建一个测试 JSON 验证器(在 Fedora 27 上),但我无法导入与 JSON 相关的包。不同的 Java 实现是否为此使用不同的包?
我的源代码如下:

import javax.json.JsonObject; 
import javax.json.JsonException;

public class JsonParsing {
    public static void Main(String[] args) {
        String str = "<h1>This is a test.</h1>";
        if(isValidJson(str)) {
               System.out.println("Valid JSON");
        }
        else {
            System.out.println("JSON Exception detected");
        }

    }
    private static boolean isValidJson(String response) {
        try{ 
        JSONObject jsonObj = new JSONObject (response);
        } catch(JSONException e) {
            System.out.println("JSONException");
            return false;
        }
        return true;
    }

}

错误日志:

JsonParsing.java:2:错误:包 javax.json 不存在导入 javax.json.json; ^ JsonParsing.java:3:错误:包 javax.json 不存在导入 javax.json.JsonObject; ^ JsonParsing.java:18: 错误: 找不到符号 JSONObject jsonObj = new JSONObject (response); ^ 符号:
类 JSONObject 位置:类 JsonParsing JsonParsing.java:18: 错误:找不到符号 JSONObject jsonObj = new JSONObject (回复); ^ 符号:类 JSONObject 位置:类 JsonParsing JsonParsing.java:19:错误:找不到符号 } 捕捉(JSONException e){ ^ 符号:类 JSONException 位置:类 JsonParsing 5 个错误

【问题讨论】:

  • 使用json-simple-1.1.1.jar。它提供了使用 JSON 所需的类。
  • 你的类路径中有需要的 jars 吗?
  • 你有json的标准罐子吗?
  • 不,我没有任何罐子。 Java中的JSON不是已经存在了吗?我需要添加外部库吗?

标签: java json fedora openjdk


【解决方案1】:

在“pom.xml”文件中包含以下依赖项。

<dependency>
    <groupId>com.googlecode.json-simple</groupId>
    <artifactId>json-simple</artifactId>
    <version>1.1.1</version>
</dependency>

【讨论】:

【解决方案2】:

简单的答案是,您没有这些类在范围内。

这个包不是你java环境中包含的标准java库之一,你需要做的就是找到所需的jar并确保它在范围内。

【讨论】:

    【解决方案3】:

    javax.json 包不是 Java SE 的一部分。您可以在 https://docs.oracle.com/javase/9/docs/api/overview-summary.html 找到适用于 Java SE 9 的 Java SE API。

    您需要将实现 javax.json API 的附加库添加到您的类路径或模块路径。 JSON-P API 是作为 JSR 353 的一部分开发的:https://jcp.org/en/jsr/detail?id=353

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多