Tutoriais sobre javaagents [fechados]
JADE
. Sei que o agente java pode significar duas coisas:
-
Um agente programado em Java a encarnar o agente
conceito de sistemas distribuídos.
- Um componente de software de baixo nível para aumentar o funcionamento de uma JVM, tais como como profilers, ferramentas de cobertura de código, etc
encontrei uma pergunta semelhante aqui , mas infelizmente também se refere à versão 1.
conhece algum artigo, tutoriais para iniciantes, projecto de exemplo sobre o javaagent na versão 2? Encontrei um aqui, mas estou à procura de mais.
2 answers
O segundo caso fala sobre Java Instrumentation API - este link aponta para um Javadoc que é bastante descritivo.
E aqui, está a instrução completa e um exemplo de como criar o agente de instrumentação java .
O conceito principal é:
-
Implementar um método estático
premain
(como uma analogia ao métodomain
), Assim:import java.lang.instrument.Instrumentation; class Example { public static void premain(String args, Instrumentation inst) { ... } }
-
Criar um ficheiro Manifesto (digamos,
manifest.txt
) marcando esta classe para pré-main execucao. O seu conteúdo é:Premain-Class: Example
-
Compile a classe e embale esta classe num arquivo
JAR
:javac Example.java jar cmf manifest.txt yourAwesomeAgent.jar *.class
-
Execute o seu JVM com o parâmetro
-javaagent
, assim:java -javaagent:yourAwesomeAgent.jar -jar yourApp.jar
Poucos recursos úteis para o javaagent, como descrito no ponto #2.
- Como escrever um javaagent
- domar Javaagents-apresentação no BCN JUG 2015
- documentação da API para hipoteca.idioma.instrumento