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

Java9 Jig看支持javaAgent

柳修为
2023-03-14

Java9(特别是拼图)中是否有任何计划来支持Java监控代理的特殊要求?

通常,监视代理需要访问类、包和模块的能力,这些类、包、模块在默认情况下对原始Java应用程序是不可用的。通过-javaagent命令行参数加载到JVM中的监控代理不会作为模块加载,即使jar文件包含模块信息。类文件。我能够为我的监控代理提供所需权限的唯一方法是添加命令行参数,将这些权限提供给所有未命名的模块。

共有1个答案

柳弘方
2023-03-14

Instrumentation类使用允许重新定义任何模块的方法进行了扩展。它允许您添加其他模块读取、导出、打开、服务使用和提供:

void redefineModule(Module module,
                    Set<Module> extraReads,
                    Map<String,Set<Module>> extraExports,
                    Map<String,Set<Module>> extraOpens,
                    Set<Class<?>> extraUses,
                    Map<Class<?>,List<Class<?>>> extraProvides);

此外,ClassFileTransformAPI被扩展为在转换时注册一个Java模块

default byte[] transform(Module module,
                         ClassLoader loader,
                         String className,
                         Class<?> classBeingRedefined,
                         ProtectionDomain protectionDomain,
                         byte[] classfileBuffer)
                  throws IllegalClassFormatException;

该模块与仪器API相结合,允许进行任何必要的调整。

目前,Java 代理仍然加载在类路径上,而不应用任何模块化;但是,由于Java 9尚未最终确定,因此可以更改。

 类似资料:
  • 对于Requests,如果你有问题或者建议,可以通过下面几种方法得到支持: StackOverflow 如果你的问题不包含敏感或私有信息,或者你能将这些信息匿名化,那你就可以在 StackOverflow 上使用 python-requests 标签提问。 发送推文 如果你的问题在140个字符内描述,欢迎在 twitter 上发送推文至 @kennethreitz, @sigmavirus24,

  • 本文向大家介绍怎么查看系统支持的所有信号?相关面试题,主要包含被问及怎么查看系统支持的所有信号?时的应答技巧和注意事项,需要的朋友参考一下 答案: kill -l

  • Jython 是在 Java 平台 (JVM) 运行的 Python 实现。这个文档将让你在Jython之上运行Django。 Installing Jython Django使用Jython 2.7b2及更高版本。有关下载和安装说明,请参阅Jython网站。 Creating a servlet container 如果你只是想试验Django,请跳到下一节; Django包含一个可以用于测试的

  • Babel 的社区非常庞大并且增长速度很快,伴随着我们成长的同时我们希望保证人们总能获取他们需要的所有资源。 所以我们提供了数种途径来提供支持。 谨记在所有的这些沟通渠道里我们都共同遵守一套行为准则。 破坏准则的行为会被处理。 所以请阅读它并在与他人互动时注意自己的行为。 同时我们也在寻求发展一个自我支持式的社区,为那些始终热诚奉献的人们。 如果别人问的问题你恰好知道答案,请不吝花费几分钟帮帮他们

  • 如何让Java8与Eclipse一起工作? 我遵循了这个指南,但不起作用。我也看过EclipseJava8维基页面,但是他们没有解释如何处理签出的git存储库。

  • suEXEC特性使得Apache可以使用与调用web服务器的用户不同的用户身份来运行CGI和SSI程序。而通常情况下,CGI或者SSI程序执行时使用和web服务器相同的用户身份。 正确运用该特性,可以减少很多因为提供用户执行私有CGI或者SSI程序所带来的安全风险。但如果配置不当的话,则可能引起很多问题,使你的计算机产生更多的安全漏洞。如果你对管理 setuid root 程序以及可能导致的安全问