J'utilise le printemps 3.2.9, Tomcat 6.0.44
J'essaie de configurer le fournisseur d'instrumentation à ressort de mon application (par exemple, Spring-Instrumentation.jar) pour le tissage de temps en temps libre, lorsqu'il est déployé sur Tomcat.
J'ai une obligation de ne pas utiliser: "-JavaAgent: /path/path/spring-instrument.jar" sur la ligne de commande pour faire la configuration. p>
J'ai lu que je peux configurer l'instrumentation de printemps en modifiant l'élément J'ai un fichier meta-Inf / AOP.XML, ressemble à ceci: p> SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.IllegalStateException: Must start with Java agent to use InstrumentationLoadTimeWeaver. See Spring documentation.
etc....
3 Réponses :
Ceci est le code que j'ai réussi à utiliser afin de supprimer l'exception que vous avez mentionnée. Fondamentalement, vous devez mettre en œuvre le fichier LoadTIMeWeVouvantConfigurier et remplacer la méthode getloadTimeweaver ().
@Configuration @ComponentScan(basePackages = "org.myproject") @EnableAspectJAutoProxy @EnableSpringConfigured @EnableLoadTimeWeaving(aspectjWeaving = EnableLoadTimeWeaving.AspectJWeaving.AUTODETECT) public class Config implements LoadTimeWeavingConfigurer { @Override public LoadTimeWeaver getLoadTimeWeaver() { return new ReflectiveLoadTimeWeaver(); } @Bean public InstrumentationLoadTimeWeaver loadTimeWeaver() throws Throwable { InstrumentationLoadTimeWeaver loadTimeWeaver = new InstrumentationLoadTimeWeaver(); return loadTimeWeaver; } }
@Ryan je pourrais obtenir la même chose dans XML Config. Regardez le Spring Doc - docs.spring.io/spring/docs/current/javadoc-api/org/... Cela pourrait aider. Merci
Merci pour le lien. Cela semble plus détaillé que ce que j'avais trouvé. Cela n'a pas fonctionné sur ma première tentative mais agréable d'entendre que c'est possible.
https://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Performance/Weaving/Static_Weaving Try maven plug-in from the above link. It's working
Bien que cela puisse répondre théoriquement à la question, Il serait préférable d'inclure les parties essentielles de la réponse ici et de fournir le lien pour référence .
J'ai utilisé Invesdwin-Instrument pour effectuer cela. Il vous permet d'utiliser de manière dynamique une instrumentation de tissage de temps de charge afin de ne pas avoir à utiliser de Javaagent.
Cela m'a pris un peu d'effort pour le faire fonctionner avec Tomcat 8.5. Mais il fonctionne enfin à l'aide de cette configuration avec le démarrage du ressort: p> Il devrait également fonctionner avec la version précédente de tomcat. P> considère p> p>
Même problème! Toute solution?