当前位置: 首页 > 知识库问答 >
问题:

在Java中使用附加api

李开宇
2023-03-14

我想在Java 14中使用附加API。据我所知,这是转移到jdk。在Java 9中附加。我运行了java--列出模块,并安装了该模块。

我如何在我的项目中实际使用该模块?我试着导入jdk。附加,但这引发了一个错误。

共有2个答案

姜博
2023-03-14

您必须导入com。太阳工具。贴上

赵炯
2023-03-14

我在模块定义中使用JDK14,这就是我需要更改以用于模块信息的全部内容。java

requires transitive jdk.attach;

下面是一个运行它的简单调用:

import com.sun.tools.attach.AttachNotSupportedException;
import com.sun.tools.attach.VirtualMachine;

...

public static void main(String[] args) throws AttachNotSupportedException, IOException
{
    System.out.println("BEGIN");
    var vms = VirtualMachine.list();
    for (var vm : vms)
    {
        System.out.println("vm="+vm);

    }

    System.out.println("END");
}

以上代码在非模块项目中按原样运行。

 类似资料:
  • 问题内容: 我在看下面的例子 其中使用以下代码 这样做的好处是什么 我尝试过这两种方法,并且在一次附加到一个文件的任务上,它们的速度似乎相当。 问题答案: 在Javadoc中提供了关于这个问题的一个合理的讨论: 通常,Writer立即将其输出发送到基础字符或字节流。除非需要即时输出,否则建议将BufferedWriter包装在其write()操作可能会很昂贵的所有Writer周围,例如FileWr

  • 问题内容: 与之相反的是: 我有一个列表,每当用户单击一个复选框时,我都会添加行星的名称,如果清除了该复选框,我想从savedPlanets中删除该名称 问题答案: 您可以执行以下操作: 理想情况下,我将执行以下解决方案:

  • 问题内容: 无法附加到吗? 我正在尝试附加到对象列表。摘录后的代码是一个在作业完成时调用的函数。 但是,当我尝试读取它时,我只会得到文件中的第一个。然后我得到。 要阅读我正在使用 我不知道会出现多少个对象,因此我在阅读时没有例外。根据Google的说法,这是不可能的。我想知道是否有人知道吗? 问题答案: 子类并覆盖方法: 要使用它,只需检查历史文件是否存在,然后实例化此可附加流(如果文件存在=如果

  • 我在附加数据库并将附加数据库中的所有行插入到主数据库时遇到问题。 我做错了什么?

  • 问题内容: 我有一个Python脚本,我怀疑这是一个死锁。我正在尝试进行调试,但是如果逐步进行,它不会陷入死锁,并且通过返回的输出,我可以看到它没有被挂在同一迭代上。我只想在锁定脚本时将其附加到调试器,可以吗?如果需要,我愿意使用其他调试器。 问题答案: 目前, pdb 无法停止并在正在运行的程序上开始调试。您还有其他选择: 广东发展银行 您可以使用GDB在C级别进行调试。这有点抽象,因为您是在研

  • 问题内容: 我创建了一个包含所有已编译内容的jar文件。另外,我的ant构建脚本将所需的库复制到子文件夹“ libs”中。结构如下: 因此,当我现在尝试运行程序时,出现以下错误: 为什么会这样? 问题答案: 你可以使用两种 或者 ,你不能将二者结合起来。如果要将其他JAR放在类路径中,则应将它们放在主JAR的清单中,然后使用,或者将完整的类路径(包括主JAR及其依赖项)放入其中,并在命令行上显式命