java - 附加不支持异常 : no providers installed java agent

标签 java exception instrumentation javaagents

我无法将我的 Java 应用程序附加到远程 Java 虚拟机。 我在 Windows 7 上使用 java 8u45,我的附加代码非常简单

import java.io.IOException;
import java.util.List;
import java.util.Scanner;

import com.sun.tools.attach.AttachNotSupportedException;
import com.sun.tools.attach.VirtualMachine;
import com.sun.tools.attach.VirtualMachineDescriptor;
import com.sun.tools.attach.spi.AttachProvider;

public class AgentLoader
{
    public static void main(String[] args)
    {
        Scanner s = new Scanner(System.in);
        String pid = s.next();

        try
        {
            VirtualMachine vm = VirtualMachine.attach(pid);
        }
        catch (Exception ex)
        {
            ex.printStackTrace();
        }
    }
}

当调用 attach 时,我得到 AttachNotSupportedException 并且没有安装提供程序。 我浏览了网络上的一些答案,发现很少有不适合我的解决方案。 比如确保我不会在同一台机器上混淆几个 java 版本。 设置 PATH 变量指向位于 %JAVA_HOME%\jre\bin 的 attach.dll 库 等..

他们都不适合我

知道可能是什么问题吗? 谢谢

最佳答案

包括以下代码行,它应该可以工作。它需要 attach.dll 文件才能工作。

static
{
   System.loadLibrary("attach");
}

关于java - 附加不支持异常 : no providers installed java agent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30325863/

相关文章:

java - 寻找一些关于从头开始创建 ArrayLists(Java 中)方法的好资源

java - 使用 Jersey 和 session 管理进行 REST 授权

java - catch block 后如何询问用户输入

c++ - "break when an exception is void"是什么意思?

java - 指定 java 代理的类路径

java - android 4.3 蓝牙蓝牙不调用 onCharacteristicRead()

java - 没有网络服务器的 JSP 引擎

javascript - 抛出前一帧信息

profiling - 使用 Valgrind 获取指令配置文件

java - 如何避免验证错误: “Expecting to find unitialized object on stack” for objects already initialized