You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot应用启动成功,但遭遇JMX服务URL获取错误问题咨询

Spring Boot应用启动成功但报JMX服务URL获取错误

我的Spring Boot应用启动后运行无明显异常,但收到错误提示:Failed to retrieve application JMX service URL(无法获取应用JMX服务URL)。

问题原因与解决方案

这个错误通常是JMX服务初始化时机问题或自动探测失败导致的,不影响核心业务,但可通过以下方式消除:

  • 禁用JMX自动配置
    如果不需要JMX监控功能,直接在application.properties中添加配置关闭:
spring.jmx.enabled=false
  • 显式指定JMX服务参数
    若需保留JMX,手动配置服务端口与标识,避免自动探测失败:
spring.jmx.default-domain=your-app-domain
com.sun.management.jmxremote.port=9090
com.sun.management.jmxremote.rmi.port=9090
com.sun.management.jmxremote.authenticate=false
com.sun.management.jmxremote.ssl=false

将your-app-domain替换为你的应用标识,端口可根据需求自定义。

  • 延迟JMX相关操作
    通过监听ApplicationReadyEvent事件,确保JMX服务完全初始化后再执行相关操作,避免启动阶段的探测失败。

原始启动日志

HHH000204: Processing PersistenceUnitInfo [name: default]
2023-11-21T11:22:53.545+05:30  INFO 8960 --- [           main] org.hibernate.Version                    : HHH000412: Hibernate ORM core version 6.2.13.Final
2023-11-21T11:22:53.547+05:30  INFO 8960 --- [           main] org.hibernate.cfg.Environment            : HHH000406: Using bytecode reflection optimizer
2023-11-21T11:22:53.748+05:30  INFO 8960 --- [           main] o.s.o.j.p.SpringPersistenceUnitInfo      : No LoadTimeWeaver setup: ignoring JPA class transformer
2023-11-21T11:22:53.769+05:30  INFO 8960 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
2023-11-21T11:22:53.880+05:30  INFO 8960 --- [           main] com.zaxxer.hikari.pool.HikariPool        : HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@1d77746b
2023-11-21T11:22:53.882+05:30  INFO 8960 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
2023-11-21T11:22:53.915+05:30  WARN 8960 --- [           main] org.hibernate.orm.deprecation            : HHH90000025: MySQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default)
2023-11-21T11:22:54.143+05:30  INFO 8960 --- [           main] o.h.e.t.j.p.i.JtaPlatformInitiator       : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration)
2023-11-21T11:22:54.146+05:30  INFO 8960 --- [           main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2023-11-21T11:22:54.208+05:30  WARN 8960 --- [           main] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
2023-11-21T11:22:54.506+05:30  INFO 8960 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2023-11-21T11:22:54.512+05:30  INFO 8960 --- [           main] com.example.groups.GroupsApplication     : Started GroupsApplication in 2.466 seconds (process running for 3.059)

配置文件(application.properties)

spring.datasource.url=jdbc:mysql://localhost:3306/newdb?useSSL=false
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect

User实体类(user.java)

package entity;

import jakarta.persistence.*;
import lombok.Data;

@Entity
@Data
@Table(name="user")
public class user {
    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE)
    @Column(name = "ID",nullable = false,unique = true)
    private long id;
    @Column(name = "Email",nullable = false)
    private String mailid;
    @Column(name = "Full Name",nullable = false)
    private String fullname;
    @Column(name = "Password",nullable = false)
    private String password;

    public user(long id, String mailid, String fullname, String password) {
        this.id = id;
        this.mailid = mailid;
        this.fullname = fullname;
        this.password = password;
    }

    public user() {

    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public String getMailid() {
        return mailid;
    }

    public void setMailid(String mailid) {
        this.mailid = mailid;
    }

    public String getFullname() {
        return fullname;
    }

    public void setFullname(String fullname) {
        this.fullname = fullname;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

}

内容的提问来源于stack exchange,提问作者Rohit Boni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 16:09:52