gpt4 book ai didi

java - 为什么我的 Spring PropertySource 注释在编码属性上失败?

转载 作者:行者123 更新时间:2023-12-02 01:50:55 24 4
gpt4 key购买 nike

我正在开发一个新的 Spring Web 应用程序,并且遵循一种适用于早期 Web 应用程序的模式。我有一个网络应用程序配置类:

@Configuration
@EnableWebMvc
@EnableJpaRepositories
@EnableTransactionManagement
@ComponentScan(basePackages = {"com.example" })
@PropertySource(value = "classpath:application.properties")
public class WebApplicationConfiguration extends WebMvcConfigurerAdapter { ... }

当我启动 Web 应用程序(在 Tomcat 下)时,出现以下错误:

[RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext
[RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class
[org.springframework.web.context.ContextLoaderListener] org.springframework.beans.factory.BeanDefinitionStoreException:
Failed to parse configuration class [com.example.WebApplicationConfiguration];
nested exception is java.lang.IllegalArgumentException:
Attribute 'encoding' not found in attributes for annotation [org.springframework.context.annotation.PropertySource]
at org.springframework.context.annotation.ConfigurationClassParser.parse (ConfigurationClassParser.java:187)
...
Caused by: java.lang.IllegalArgumentException:
Attribute 'encoding' not found in attributes for annotation
[org.springframework.context.annotation.PropertySource]

我不需要在早期网络应用程序中的 @PropertySource 注释上指定 encoding 属性,因此我不确定为什么现在会出现错误。无论如何,我尝试了以下方法:

@PropertySource(value = "classpath:application.properties", encoding = "UTF-8")

...这没有什么区别,即。我遇到了同样的错误。这对我来说表明根本原因可能不是 @PropertySource 注释。关于我可能做错了什么的任何建议

最佳答案

像这样的错误通常是混合来自不同版本的 Spring 的 jar 的迹象。在这种情况下,@PropertySource 注释的注释处理器期望存在 encoding 属性。

但是在运行时它不存在,因此会产生错误。

您想要检查您的(传递)依赖项是否存在冲突版本(或您未明确管理的版本)。

关于java - 为什么我的 Spring PropertySource 注释在编码属性上失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52999598/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com