【发布时间】:2025-12-18 04:10:02
【问题描述】:
我正在一个没有 java.net 包(因此没有 java.net.URI)的嵌入式平台上工作。我尝试使用 Apache 库创建一个 HttpClient,但是当我创建一个 HttpGet 对象并像这样传递一个字符串参数时
String request = "www.example.com";
HttpGet response = new HttpGet(request);
我还是得到了
The type java.net.URI cannot be resolved.
为什么我不能只使用new HttpGet(String) 构造函数?
当我尝试从 String 创建 JSONObject 并且构造函数需要我没有的 java.util.Map 时,也会发生同样的冲突。
【问题讨论】:
-
请发布一些代码和编译器错误/堆栈跟踪。您是否在编译时或运行时收到此错误?您收到的错误消息似乎表明与您提到的问题不同。
-
所以,这是一个编译时错误:
The type java.net.URI cannot be resolved. It is indirectly referenced from required .class files代码几乎就是我在问题中提到的那两行。 -
怎么样?您是否从构建路径中删除了标准 Java 库?
-
我觉得我解释得不好,抱歉。我没有所有标准 Java 库,我在使用 Java 库子集的平台上工作。所以,我无法导入 java.net.URI。因为 java.net 不在平台的子集中..
-
您必须找到为您的特定平台编写的替代库。为 Java SE 编写的库在内部尝试使用您的非 Java 平台不提供的类时迟早会失败。
标签: java apache constructor http-get