jdk1.8中的rt.jar在11中在哪
时间: 2023-10-01 08:11:44 浏览: 41
在 JDK 11 中,rt.jar 被拆分成了多个模块化的 JAR 文件,这些文件存储在 JDK 的安装目录中的 `lib` 文件夹下。如果你需要在 JDK 11 中使用 rt.jar 中的类,可以将其替换为对应的模块,或者使用 `--add-modules` 命令行选项来添加所需的模块。具体的替换或添加模块的方法可以参考 JDK 11 的官方文档。
相关问题
import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class HttpPostExample { public static void main(String[] args) throws IOException { String url = "https://api2.hik-cloud.com/oauth/token"; String postData = "{\"client_id\":\"874a183dbb49413389da36a5604bebff\",\"client_secret\":\"a979232b74044de0aa0c12ee2a8bcc43\",\"grant_type\":\"client_credentials\"}"; URL obj = new URL(url); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); // 设置请求方法为POST con.setRequestMethod("POST"); // 启用输出流,用于发送POST数据 con.setDoOutput(true); // 设置POST数据 try (DataOutputStream wr = new DataOutputStream(con.getOutputStream())) { wr.writeBytes(postData); wr.flush(); } // 获取响应码 int responseCode = con.getResponseCode(); System.out.println("Response Code: " + responseCode); // 读取响应内容 try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()))) { String inputLine; StringBuilder response = new StringBuilder(); while ((inputLine = in.readLine()) != null) { response.append(inputLine); } System.out.println("Response: " + response.toString()); } } }这段代码结果D:\jdk1.8\bin\java.exe "-javaagent:D:\IDEA\IntelliJ IDEA 2021.1.1\lib\idea_rt.jar=52938:D:\IDEA\IntelliJ IDEA 2021.1.1\bin" -Dfile.encoding=UTF-8 -classpath D:\jdk1.8\jre\lib\charsets.jar;D:\jdk1.8\jre\lib\deploy.jar;D:\jdk1.8\jre\lib\ext\access-bridge-64.jar;D:\jdk1.8\jre\lib\ext\cldrdata.jar;D:\jdk1.8\jre\lib\ext\dnsns.jar;D:\jdk1.8\jre\lib\ext\jaccess.jar;D:\jdk1.8\jre\lib\ext\jfxrt.jar;D:\jdk1.8\jre\lib\ext\localedata.jar;D:\jdk1.8\jre\lib\ext\nashorn.jar;D:\jdk1.8\jre\lib\ext\sunec.jar;D:\jdk1.8\jre\lib\ext\sunjce_provider.jar;D:\jdk1.8\jre\lib\ext\sunmscapi.jar;D:\jdk1.8\jre\lib\ext\sunpkcs11.jar;D:\jdk1.8\jre\lib\ext\zipfs.jar;D:\jdk1.8\jre\lib\javaws.jar;D:\jdk1.8\jre\lib\jce.jar;D:\jdk1.8\jre\lib\jfr.jar;D:\jdk1.8\jre\lib\jfxswt.jar;D:\jdk1.8\jre\lib\jsse.jar;D:\jdk1.8\jre\lib\management-agent.jar;D:\jdk1.8\jre\lib\plugin.jar;D:\jdk1.8\jre\lib\resources.jar;D:\jdk1.8\jre\lib\rt.jar;F:\javaprojecct\pro01\out\production\pro01 HttpPostExample Response Code: 200 Response: Process finished with exit code 0
根据你提供的代码,HTTP POST请求已成功发送,并且响应码为200,表示请求成功。然而,从你的输出结果中可以看出,响应内容为空。这可能是因为你没有正确处理响应流。在这种情况下,你可以尝试使用`getErrorStream()`方法来获取响应流,即使响应码为200,也可能会获得有用的错误信息。修改代码如下所示:
```java
// 读取响应内容
try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()))) {
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
System.out.println("Response: " + response.toString());
} catch (IOException e) {
// 如果获取错误流成功,则读取错误信息
try (BufferedReader errorIn = new BufferedReader(new InputStreamReader(con.getErrorStream()))) {
String errorLine;
StringBuilder errorResponse = new StringBuilder();
while ((errorLine = errorIn.readLine()) != null) {
errorResponse.append(errorLine);
}
System.out.println("Error Response: " + errorResponse.toString());
} catch (IOException ex) {
ex.printStackTrace();
}
}
```
通过添加对错误流的处理,你可以查看是否存在任何错误信息。如果仍然无法获得响应内容,请检查API端点的返回数据是否符合预期,并确保你的请求参数和数据格式正确。
E:\soft\jdk\jdk-1.8-341\jre\lib\rt.jar: invalid LOC header (bad signature)
错误信息"E:\soft\jdk\jdk-1.8-341\jre\lib\rt.jar: invalid LOC header (bad signature)"表示该文件的LOC头无效或签名错误。这通常发生在jar文件损坏或下载错误的情况下。要解决此问题,您可以尝试以下步骤:
1. 首先,确保您下载的JDK版本是正确的,并且来自官方网站或可信的来源。
2. 您可以尝试重新下载该文件,并确保下载的文件完整且没有损坏。您可以使用不同的下载源或下载管理器来进行尝试。
3. 如果重新下载仍然无效,那么可能是您的文件系统出现了问题。您可以尝试将该文件复制到另一个位置或使用另一台计算机来验证文件是否仍然无效。
4. 如果问题仍然存在,那么您可能需要考虑使用其他版本的JDK。您可以尝试使用最新版本的JDK,或者尝试使用之前的版本来查看是否能够解决此问题。
总之,"E:\soft\jdk\jdk-1.8-341\jre\lib\rt.jar: invalid LOC header (bad signature)"错误可能是由损坏的或错误的jar文件引起的。通过重新下载文件或尝试其他版本的JDK,您可能能够解决此问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [JDK1.8的lib相关jar](https://blog.csdn.net/zp357252539/article/details/122778256)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* [tomcat启动错误---Caused by: java.util.zip.ZipException: invalid LOC header (bad signature)](https://blog.csdn.net/Yang_yangyang/article/details/118572910)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]