当前位置: 首页 > 面试题库 >

从Spring Boot 1.2.8切换到1.3.2后,应用程序神奇地停止工作

龙浩博
2023-03-14
问题内容

从Spring Boot 1.2.8升级到1.3.2后,我的应用程序突然停止工作。

在应用程序启动时,出现以下异常。

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.context.support.ResourceBundleMessageSource] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:1373)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1119)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:545)
    ... 25 more

似乎有问题,ResourceBundleMessageSource但我不知道为什么。在1.2.8版中,所有内容都像魅力一样。

这是我的 pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <!--replace with your namespace and version -->
    <groupId>my</groupId>
    <artifactId>project</artifactId>
    <version>0.1</version>

    <properties>
        <hibernate.version>5.0.2.Final</hibernate.version>
        <spring.data.jpa.version>1.9.0.RELEASE</spring.data.jpa.version>
        <spring.social.version>1.1.2.RELEASE</spring.social.version>
        <spring.social.twitter.version>1.1.1.RELEASE</spring.social.twitter.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <start-class>my.project.Application</start-class>
        <java.version>1.8</java.version>
    </properties>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.2.RELEASE</version>
        <relativePath />
    </parent>

    <repositories>
        <repository>
            <id>project.local</id>
            <name>my-project</name>
            <url>file:${project.basedir}/repo</url>
        </repository>
    </repositories>


    <build>
    <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.3</version>
        <configuration>
            <compilerArgs>
                <arg>-parameters</arg>
            </compilerArgs>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
    </plugin>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
    <dependency>
        <groupId>org.thymeleaf.extras</groupId>
        <artifactId>thymeleaf-extras-springsecurity4</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-security</artifactId>
    </dependency>
    <dependency>     
        <groupId>org.springframework.social</groupId>
        <artifactId>spring-social-security</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-social-facebook</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.social</groupId>
        <artifactId>spring-social-google</artifactId>
        <version>1.0.0.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>9.4-1203-jdbc42</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-java8</artifactId>
        <version>${hibernate.version}</version>
    </dependency>   
    <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.8.2</version>
    </dependency>
    <dependency>
        <groupId>org.jadira.usertype</groupId>
        <artifactId>usertype.jodatime</artifactId>
        <version>2.0.1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.4</version>
    </dependency>
    <dependency>
        <groupId>net.tanesha.recaptcha4j</groupId>
        <artifactId>recaptcha4j</artifactId>
        <version>0.0.7</version>
    </dependency>
    <dependency>
        <groupId>javax.json</groupId>
        <artifactId>javax.json-api</artifactId>
        <version>1.0</version>
    </dependency>
    <dependency>
        <groupId>org.glassfish</groupId>
        <artifactId>javax.json</artifactId>
        <version>1.0.4</version>
    </dependency>
    <dependency>
        <groupId>javax.mail</groupId>
        <artifactId>javax.mail-api</artifactId>
        <version>1.5.4</version>
    </dependency>
    <dependency>
        <groupId>com.sun.mail</groupId>
        <artifactId>javax.mail</artifactId>
        <version>1.5.4</version>
    </dependency>
  </dependencies>
</project>

问题答案:

听起来您有一个或多个messages_${locale}.properties文件,但没有messages.properties文件。从1.3.2发布公告:

如果从1.3.1升级,则可能会有一项重大更改;我们现在仅搜索messages.properties(而不是messages*.properties)以启用消息源的自动配置。如果您以前有一个格式的消息文件messages_en.properties但没有包括默认messages.properties文件,则现在需要添加一个。



 类似资料:
  • 有一个很奇怪的问题...有一次我打开我的项目,并注意到我没有机会从工作室推出app...黑色三角形唱罩禁用 但是,如果我构建apk文件并使用adb命令安装它,它就可以工作。 我已经尝试删除和下载新的Android Studio,但没有任何改变... 我的插件 我的配置

  • 我试图重新创建Connect四,我成功了。但我想通过频繁地切换颜色,给玩家一个获胜的四张光盘在哪里的指示。我对线程和编程中的时间概念是新的。 我也成功地给了用户这个指示,但是在关闭应用程序之后,控制台仍然会给出输出,也是在使用SetonCloserEquest时。 代码如下:

  • 我的模特。py看起来像: 模型中描述了“名称”和“站点”! 每当我尝试运行我的服务器时,我都会 django.db.utils.编程错误:除非使用可以解释8位字节串的text_factory(如text_factory=str),否则不得使用8位字节串。强烈建议您将应用程序切换到Unicode字符串。 我怎样才能将我的应用程序切换到上面提到的Unicode字符串,或者如果有其他方法来解决这个问题,

  • 我已经将我们的项目迁移到androidx,现在该应用程序在API21及以上版本上运行,但在API21及以上版本下无法运行。这款应用正在使用multidexing,之前也一直在使用,运行良好。现在我只是得到一个致命的信号11和没有更多有用的日志时,应用程序崩溃。该系统在空气污染指数21或以上时仍然运作良好。你有什么线索或暗示我如何更接近解决这个问题吗?

  • 我需要知道如何改变上下文,如果有可能在原生windows桌面应用程序和浏览器之间切换,以及如何做到这一点。

  • 我有一个在Openshift 4.6中运行的应用程序。 pod正在运行,我可以执行它并检查它,我可以端口转发到它并访问它。 尝试访问应用程序时,我得到错误消息: 应用程序不可用应用程序当前未在此endpoint上为请求提供服务。它可能尚未启动或仍在启动。 您看到此页面的可能原因: 主机不存在。请确保键入的主机名正确,并且存在与该主机名匹配的路由。 主机存在,但没有匹配的路径。检查URL路径是否输入