jdk1.6调试异常:JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return c

本文介绍了解决JDK1.6中出现的JDWP错误的方法,在main()函数末尾添加System.exit(0)可以有效解决ERROR:JDWP Unable to get JNI1.2 environment的问题。
jdk1.6bug解决方法(ERROR: JDWP Unable to get JNI 1.2 environment, jvm-...

在用java编程的时候,偶尔会出现下面的错误,jdk1.6.0-rc1:

ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2
JDWP exit error AGENT_ERROR_NO_JNI_ENV(183): [../../../src/share/back/util.c:820]

解决方法:

在程序最后,main()函数中添加:

System.exit(0);
将解决这个问题。具体的线程问题还要等新版本出来吧。

参考链接:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6476706
package org.找车位; import com.sun.xml.internal.ws.util.QNameMap; import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Scanner; public class test { /* 有 n 辆汽车去停车场找车位,这些汽车从0开始依次编号。 停车场里有无数个车位,也从0开始依次编号。当一辆汽车到达停车场时,会停在编号最小且空闲的车位。 比方说,当一辆汽车到达时,如果车位 0 ,1 和 5 被占据了,那么它会停在 2 号车位。 当一辆汽车离开停车场时,这个车位会立刻释放变成空闲状态;如果同一时刻有另一辆汽车到达,且该车位满足”编号最小且空闲”条件,则新来车辆可以立即停在这个车位。 给你汽车数量n和它们到达和离开的时刻,所有汽车到达时刻互不相同。 请你返回目标编号汽车所停的车位编号。 输入 输入有两行 第一行表示汽车数量n和目标汽车编号 第二行表示所有汽车到达和离开的时刻,共有2n个值,比如如下输入表示有三辆汽车,编号为0的汽车到达时刻为1,离开时刻为4;编号为1的汽车到达时刻为2,离开时刻为3;编号为2的汽车到达时刻为4,离开时刻为6 3 1 1 4 2 3 4 6 输出 目标编号汽车所停的车位编号 */ public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 输入汽车的数量 int n = scanner.nextInt(); //目标汽车编号 int y = scanner.nextInt(); //汽车所在车位 HashMap<Integer, HashMap<Integer, Integer>> Car_position = new HashMap<>(); HashMap<Integer, Integer> parkState = new HashMap<>(); // 定义一个长度为10000的数组,表示10000个车位 int[] park = new int[n]; // 输入n行,每行两个数,分别表示汽车的到达和离开时刻 for (int i = 0; i < n; i++) { //i为汽车编号 int in = scanner.nextInt(); int out = scanner.nextInt(); // InAndOut.put(i,new HashMap<>(in,out)); for (int j=0;j<park.length;j++){ //j为车位编号 if (park[j]==0){ if (Car_position.get(j)==null) { Car_position.put(j,new HashMap<>(i,out)); parkState.put(i,j); park[j]=1; i++; break; } // PriorityQueue<Integer> priorityQueue = new PriorityQueue<>(); }else if (Car_position.get(j).get(CarByPark(parkState,j))>out){ Car_position.put(j,new HashMap<>(i,out)); parkState.put(i,j); i++; break; } } } System.out.println("目标汽车车位号为"+ y + "停车场编号为"+parkState.get(y)); } static Integer CarByPark(HashMap<Integer, Integer> map, int y){ // 存储匹配的键 Integer p = null; for (Map.Entry<Integer, Integer> entry : map.entrySet()) { if (entry.getValue().equals(y)) { p=entry.getKey(); } } return p; } } 报错C:\dev\jdk1.8.0_332\bin\java.exe -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:56884,suspend=y,server=n -javaagent:C:\Users\yWX1446235\AppData\Local\JetBrains\IntelliJIdea2024.3\captureAgent\debugger-agent.jar -Dkotlinx.coroutines.debug.enable.creation.stack.trace=false -Ddebugger.agent.enable.coroutines=true -Dkotlinx.coroutines.debug.enable.flows.stack.trace=true -Dkotlinx.coroutines.debug.enable.mutable.state.flows.stack.trace=true -Dfile.encoding=UTF-8 -classpath "C:\dev\jdk1.8.0_332\jre\lib\charsets.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\access-bridge-64.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\cldrdata.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\dnsns.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\jaccess.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\jfxrt.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\localedata.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\nashorn.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\sunec.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\sunjce_provider.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\sunmscapi.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\sunpkcs11.jar;C:\dev\jdk1.8.0_332\jre\lib\ext\zipfs.jar;C:\dev\jdk1.8.0_332\jre\lib\jce.jar;C:\dev\jdk1.8.0_332\jre\lib\jfr.jar;C:\dev\jdk1.8.0_332\jre\lib\jfxswt.jar;C:\dev\jdk1.8.0_332\jre\lib\jsse.jar;C:\dev\jdk1.8.0_332\jre\lib\management-agent.jar;C:\dev\jdk1.8.0_332\jre\lib\resources.jar;C:\dev\jdk1.8.0_332\jre\lib\rt.jar;D:\dev\oj\test\Oj\target\classes;C:\dev\IntelliJ IDEA 2024.3.2.2\lib\idea_rt.jar" org.找车位.test Connected to the target VM, address: '127.0.0.1:56884', transport: 'socket' 3 1 1 4 2 3 4 6Exception in thread "main" java.lang.NullPointerException at org.找车位.test.main(test.java:58) ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2 JDWP exit error AGENT_ERROR_NO_JNI_ENV(183): [util.c:840] Disconnected from the target VM, address: '127.0.0.1:56884', transport: 'socket' Process finished with exit code 1
最新发布
11-01
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值