Java通过JDI实现对远程虚拟机的操作

本文介绍了如何使用Java Debug Interface(JDI)处理Weblogic服务器上挂起的线程。通过添加JVM启动参数-agentlib:jdwp,实现了远程调试连接,并引用了相关配置细节文档。利用JDI获取并操作线程,以避免服务器瘫痪。
摘要由CSDN通过智能技术生成

最近weblogic服务器的一个线程挂起了,需要将其杀掉,不然可能导致整个weblogic服务器瘫痪。没办法,只能通过远程调试的方法来处理了。这里使用的JDI(Java Debug Interface)来实现的。

在被调试的JVM上添加如下启动参数

-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n

具体的参数的配置可参照:《Connection and Invocation Details


package com.wxq.test;

import java.util.List;
import java.util.Map;

import com.sun.jdi.*;
import com.sun.jdi.connect.AttachingConnector;
import com.sun.jdi.connect.Connector;
import com.sun.jdi.connect.Transport;
import com.sun.jdi.connect.Connector.Argument;

public class TestJVM {

	private static final String DT_SOCKET = "dt_socket";
	private static final String DT_SHMEN = "dt_shmen";
	private static final String HOST = "hostname";
	p
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值