当前位置: 首页 > 面试题库 >

关于javaagents的教程

胡景澄
2023-03-14
问题内容

我想学习有关Javaagents的知识,但是研究并不容易。结果大部分是指JADE。我知道Java代理可以表示两件事:

  1. 用Java编程的代理是分布式系统的代理概念的化身。
  2. 用于增强JVM工作的底层软件组件,例如探查器,代码覆盖工具等。

我在这里找到了类似的问题,但不幸的是,它也涉及版本1。

您是否了解任何有关版本2中的javaagent的文章,初学者教程和示例项目?我在这里找到了,但我正在寻找更多。


问题答案:

第二种情况是关于Java Instrumentation
API的
-该链接指向一个描述性很强的Javadoc。

这是完整的说明以及如何创建Java工具代理的示例。

主要概念是:

  1. 实现一个静态premain(类似于main)方法,如下所示:

    import java.lang.instrument.Instrumentation;
    

    class Example {
    public static void premain(String args, Instrumentation inst) {

    }
    }

  2. 创建一个清单文件(例如manifest.txt),以将该类标记为在主执行前执行。其内容是:

    Premain-Class: Example
    
  3. 编译该类并将该类打包到JAR归档文件中:

    javac Example.java
    

    jar cmf manifest.txt yourAwesomeAgent.jar *.class

  4. 使用-javaagent参数执行JVM ,如下所示:

    java -javaagent:yourAwesomeAgent.jar -jar yourApp.jar
    


 类似资料:
  • 请帮帮我. 提前致谢

  • 问题内容: 我们公司有一个每天运行的批处理应用程序,它主要执行一些与数据库相关的工作,例如,从文件将数据导入数据库表。 该应用程序中定义了20多个任务,每个任务可能取决于其他任务。应用程序一个接一个地执行任务,整个应用程序在单个线程中运行。 完成所有任务需要3到7个小时。我认为它太长了,所以我想也许我可以通过多线程来提高性能。 我认为,由于任务之间存在依赖性,因此使任务并行运行不是很好(或者很不容

  • 问题内容: 关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 5年前关闭。 改善这个问题 对于一个简单的输入表单,我需要一个简单的ajax教程或案例研究,在这里我想通过输入表单发布用户名,该用户名将用户名发送到数据库并返回结果。 对于这种教程的任何建议都是值得欢迎的,因为我只有一个使用Mootool,但是我正在寻找一

  • 埃本·厄普顿 2006年,剑桥大学。年轻的助教埃本·厄普顿在为新入学的本科生头痛。 无疑,那些敢于申请剑桥大学的新生都有聪明的脑瓜。他们拿着傲人的A-Level考试成绩进入计算机系。从成绩上看,这些野心勃勃的年轻人无可挑剔。可坐在电脑前,他们就露馅了。大多数新生只会摆弄Word和Excel。好一些的,也只不过会做一两个简单的网页。新生们的计算机水平让厄普顿和他的同事们摇头不止。 要知道,早些时代的

  • Statistical learning Machine learning is a technique with a growing importance, as the size of the datasets experimental sciences are facing is rapidly growing. Problems it tackles range from building

  • 本文向大家介绍Ruby编程中关于中断和返回的用法教程,包括了Ruby编程中关于中断和返回的用法教程的使用技巧和注意事项,需要的朋友参考一下  return,break,next 这几个关键字的使用都涉及到跳出作用域的问题,而他们的不同 则在于不同的关键字跳出去的目的作用域的不同,因为有代码块则导致有一些地方需要格外注意。 return 常用方式 通常情况下的return语句和大家理解的意思是相同的