¿Cómo inicio mi programa Java con más de un agente de Java?
-
22-08-2019 - |
Pregunta
Soy consciente de cómo iniciar un progama de Java con un agente de Java:
java -javaagent:myAgent.jar MyJavaProgram
Pero lo que si quiero añadir 2 o más agentes de Java para instrumentar mi programa? Yo no quiero volver a invocar la -javaagent java:. ... para cada agente que tengo que cargar en la JVM
He intentado algo como esto:
java -javaagent:agentA.jar, agentB.jar MyJavaProgram
o algo así:
java -javaagent:agentA.jar agentB.jar MyJavaProgram
Pero no tienen éxito.
¿Hay una respuesta para resolver mi problema?
Gracias.
Solución
cómo unos dos parámetros javaagent
java -javaagent:agentA.jar -javaagent:agentB.jar MyJavaProgram
Otros consejos
Al parecer, usted puede hacer esto mediante el uso de múltiples argumentos. Desde el href="http://java.sun.com/javase/6/docs/api/java/lang/instrument/package-summary.html" documentación :
En implementaciones con una interfaz de línea de comandos, un agente se inicia mediante la adición de esta opción para la línea de comandos:
-javaagent:jarpath[=options]
jarpath es la ruta de acceso al archivo JAR agente. Opciones es el opciones de agente. Este interruptor se puede utilizar varias veces en la misma línea de comandos, creando así múltiples agentes . Más de un agente puede utilizar el mismo jarpath. Un archivo JAR agente debe cumplir con la especificación de archivo JAR.
(el subrayado es mío)
La adición de las respuestas anteriores, si está utilizando la hormiga y desea incluir <jvmargs />
con más de un frasco para -javaagent
para iniciar el servidor, así es como lo hice,
build.xml
<target name="blah">
...
<jvmarg value="-javaagent:${jar1.path}" />
<jvmarg value="-javaagent:${jar2.path}" />
...
</target>
Hay un nuevo proyecto con el objetivo de dar soporte a múltiples agentes de Java. En la actualidad se limita a las específicas.
Agente Bond es un agente súper, que envuelve y despacha en varios otros agentes. De esta manera, es suficiente con instalar un único agente dentro de la JVM con un único conjunto de datos de configuración (que contiene varias partes separadas).
https://github.com/fabric8io/agent- enlace / blob / master / README.md para más detalles