SpringBoot项目报错:"Error starting ApplicationContext...."解决办法

 更新时间:2022年08月16日 15:41:40   作者:牛·云说  
这篇文章主要给大家介绍了关于SpringBoot项目报错:“Error starting ApplicationContext. To display the conditions report re-run ...”的解决办法,文中通过图文介绍的非常详细,需要的朋友可以参考下

发现错误

SpringBoot项目报错:

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.

以下方案80%可以帮助您解决这些个‘可恶的’问题

报错内容和截图如下:

Connected to the target VM, address: '127.0.0.1:4963', transport: 'socket'

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::       (v2.3.10.RELEASE)

2021-12-25 14:52:41.578  INFO 13204 --- [           main] m.c.DiitMicrosoftserviceCheckApplication : Starting DiitMicrosoftserviceCheckApplication on 老云的计算机 with PID 13204 (D:\svn\workspace_nxzrbhdzt\Gh_yizhangtu\dit-check\target\classes started by liuyundashen in D:\svn\workspace_nxzrbhdzt\Gh_yizhangtu\dit-check)
2021-12-25 14:52:41.583  INFO 13204 --- [           main] m.c.DiitMicrosoftserviceCheckApplication : No active profile set, falling back to default profiles: default
2021-12-25 14:52:43.485  INFO 13204 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2021-12-25 14:52:43.503  INFO 13204 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2021-12-25 14:52:43.504  INFO 13204 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.45]
2021-12-25 14:52:43.668  INFO 13204 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2021-12-25 14:52:43.668  INFO 13204 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1979 ms
2021-12-25 14:52:43.832  INFO 13204 --- [           main] c.a.d.s.b.a.DruidDataSourceAutoConfigure : Init DruidDataSource
2021-12-25 14:52:43.910 ERROR 13204 --- [           main] com.alibaba.druid.pool.DruidDataSource   : testWhileIdle is true, validationQuery not set
2021-12-25 14:52:43.917  INFO 13204 --- [           main] com.alibaba.druid.pool.DruidDataSource   : {dataSource-1} inited
 _ _   |_  _ _|_. ___ _ |    _ 
| | |\/|_)(_| | |_\  |_)||_|_\ 
     /               |         
                        3.2.0 
2021-12-25 14:52:44.365  WARN 13204 --- [           main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cheakRecordController': Unsatisfied dependency expressed through field 'recordService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'TRecordServiceImpl': Unsatisfied dependency expressed through field 'packageService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'resultPackageBaseinfoServiceImpl': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'importDB.datasource.url' in value "${importDB.datasource.url}"
2021-12-25 14:52:44.366  INFO 13204 --- [           main] com.alibaba.druid.pool.DruidDataSource   : {dataSource-1} closing ...
2021-12-25 14:52:44.368  INFO 13204 --- [           main] com.alibaba.druid.pool.DruidDataSource   : {dataSource-1} closed
2021-12-25 14:52:44.372  INFO 13204 --- [           main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
2021-12-25 14:52:44.391  INFO 13204 --- [           main] ConditionEvaluationReportLoggingListener : 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2021-12-25 14:52:44.410 ERROR 13204 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cheakRecordController': Unsatisfied dependency expressed through field 'recordService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'TRecordServiceImpl': Unsatisfied dependency expressed through field 'packageService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'resultPackageBaseinfoServiceImpl': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'importDB.datasource.url' in value "${importDB.datasource.url}"
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1425) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:593) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:897) ~[spring-beans-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879) ~[spring-context-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551) ~[spring-context-5.2.14.RELEASE.jar:5.2.14.RELEASE]
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143) ~[spring-boot-2.3.10.RELEASE.jar:2.3.10.RELEASE]

——在看到这些个问题的时候,日志基本都会告诉你错误的地方,所以我们大部分可以根据日志报错的信息分析错误的原因:

一、编译出问题

仔细看报出的问题,有没有如:“Description:…” 这样的字眼,没有 “描述”,如上图所示,这种情况下的操作:
1.clean清理一下; 2.然后install重新编译一下 ;

3.也可以用这个命令,重新编译一下

这个时候重新启动,如果还是报同样的错误,打开如下图位置,看是否有编译的文件,如mapper.xml文件,application.yml或者application.properties文件,以及一些配置文件等

——哎!生气,这里发现真的没有mapper和配置文件,只有main下面的.jar文件,该怎么办呢?

——pom.xml文件中给加入要编译的文件位置依赖,如下:(这是我的文件位置,你根据你的进行调整)

<!--引入本地资源-->
        <resources>
            <!--加载lib文件,特殊情况下会有lib,但大部分都靠依赖下载了-->
            <resource>
                <directory>lib</directory>
                <targetPath>BOOT-INF/lib/</targetPath>
                <includes>
                    <include>**/*.jar</include>
                </includes>
            </resource>
            <!--打jar包-->
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
            </resource>
            <!--将properties和xml文件编译-->
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>

好的,清理——>打包——>启动——>运行成功,搞定收工

二、请求接口重复

根据日志看出它说路径问题;这样想你写的接口名字是否重复,只有一个斜杠或者没斜杠的情况

如下截图:

修改如下:

好的,重新启动,搞定收工

三、加@Mapper注解

这些情况就是看描述的问题

如图:

这种情况,看是不是没有扫描到它需要的东西,给加上@Mapper注解(是扫描dao层的),或者 加上@Service注解(扫描service层)即可。

四、加@SpringBootApplication注解,数据库问题

根据问题看出:springboot启动时会自动注入数据源和配置jpa ,解决:

在@SpringBootApplication中排除其注入

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class})

五、端口重复问题

查看是否自己的运行端口冲突,将其kill杀死,重新启动,或者跟换端口

以下是查看端口冲突的方式:

window键+R,输入“netstat -aon|findstr 8080”找到占用8080端口的进程号:

2.输入“tasklist|findstr “3412” ”:

查看进程号为“3412”的进程:

3.输入“taskkill /f /t /im QQ.exe”:(/f:强制性的结束进程)

结束这个进程

现在可以重新启动一下,看是否运行成功

六、包冲突

还有的情况可能是包冲突了,可以将maven仓库清理一下自己的包,重新下载一下

总结

到此这篇关于SpringBoot项目报错:"Error starting ApplicationContext...."解决办法的文章就介绍到这了,更多相关SpringBoot项目报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java数组队列概念与用法实例分析

    Java数组队列概念与用法实例分析

    这篇文章主要介绍了Java数组队列概念与用法,结合实例形式分析了Java数组队列相关概念、原理、用法及操作注意事项,需要的朋友可以参考下
    2020-03-03
  • Java反转字符串和相关字符编码的问题解决

    Java反转字符串和相关字符编码的问题解决

    反转字符串一直被当作是简单问题,大家的思想主要就是利用遍历,首尾交换字符实现字符串的反转。例如下面的代码,就可以简单实现反转。
    2013-05-05
  • Java中常见的查找算法与排序算法总结

    Java中常见的查找算法与排序算法总结

    数据结构是数据存储的方式,算法是数据计算的方式。所以在开发中,算法和数据结构息息相关。本文为大家整理了Java中常见的查找与排序算法的实现,需要的可以参考一下
    2023-03-03
  • web.xml中servlet, bean, filter, listenr 加载顺序_动力节点Java学院整理

    web.xml中servlet, bean, filter, listenr 加载顺序_动力节点Java学院整理

    这篇文章主要介绍了web.xml中servlet, bean, filter, listenr 加载顺序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • Java实现按键精灵的示例代码

    Java实现按键精灵的示例代码

    这篇文章主要为大家详细介绍了如何利用Java语言实现按键精灵,文中的示例代码讲解详细,对我们学习或工作有一定的参考价值,感兴趣的可以学习一下
    2022-05-05
  • SpringBoot实现发送电子邮件

    SpringBoot实现发送电子邮件

    这篇文章主要介绍了SpringBoot实现发送电子邮件,电子邮件是—种用电子手段提供信息交换的通信方式,是互联网应用最广的服务。通过网络的电子邮件系统,用户可以非常快速的方式,与世界上任何一个角落的网络用户联系,下面就来看看SpringBoot如何实现发送电子邮件吧
    2022-01-01
  • Springboot居然可以设置动态的Banner(推荐)

    Springboot居然可以设置动态的Banner(推荐)

    这篇文章主要介绍了Springboot居然可以设置动态的Banner,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • Swagger2配置Security授权认证全过程

    Swagger2配置Security授权认证全过程

    这篇文章主要介绍了Swagger2配置Security授权认证全过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • 基于synchronized修饰静态和非静态方法

    基于synchronized修饰静态和非静态方法

    这篇文章主要介绍了基于synchronized修饰静态和非静态方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • SpringBoot利用AOP实现一个日志管理详解

    SpringBoot利用AOP实现一个日志管理详解

    目前有这么个问题,有两个系统CSP和OMS,这俩系统共用的是同一套日志操作:Log;目前想区分下这俩系统的日志操作,那没办法了,只能重写一份Log的日志操作。本文就将利用AOP实现一个日志管理,需要的可以参考一下
    2022-09-09

最新评论