简体   繁体   中英

Disabling JMX in a spring application

I'm trying to disable jmx so that i don't get:

org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'mbeanExporter'anymore. 

I've found a partial answer saying that I should include this in the application.properties file:

  • spring.datasource.jmx-enabled=false

So I created the file with that one line. But how do I make sure that Spring acutally reads it? Do I need to edit something in spring.xml? If so, where?

You need to disable the setting in your application.properties file (it is automatically turned on if not set). Either edit or create this file: src/main/resources/config/application.properties

That is for a maven project, so if not in maven, just put 'resources' at the same level as your java folder.

You will just need this single line in the file (it can be blank otherwise):

spring.jmx.enabled=false

If you want to add other settings, here are all the options: http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

In my case, it was IntelliJ.

IntelliJ have a setting "Enable JMX agent" in the run configuration. This should be unchecked to disable JMX.

If checked, this will override any setting that you make in the application via properties/yml.

Are you using spring boot? If so you just need to place the file in src\\main\\resources\\application.properties by default

You can check sample projects here https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples

您可以尝试禁用 jmx 自动配置:

@EnableAutoConfiguration(exclude={JmxAutoConfiguration.class})

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM