Spring @Value 为空 [重复]
Posted
技术标签:
【中文标题】Spring @Value 为空 [重复]【英文标题】:Spring @Value is null [duplicate] 【发布时间】:2018-03-11 05:20:09 【问题描述】:正如标题所说,我的 @Value 没有传递值
我在 application.properties 中写了以下内容:
project:
image:
path= "C:\\Users\\...."
我有一个类配置
@Component
public class Configuration
@Value("$project.image.path")
public static String ImagePath;
在我的另一个名为 Image 的类中,我想将字符串路径转换为文件,以便以后可以使用此值:
public class Image
static File Directory= new File (Configuration.ImagePath);
问题是,当我使用我的程序并使用其中一种方法时,其中使用了变量 Directory(它们都写在 Image 类中),我得到一个 NullPointerException: null 并且奇怪的是,当我在错误后刷新站点时发生一次,错误现在说 NoClassDefFoundError: Could not initialize class com.Project.Image
【问题讨论】:
我觉得应该是project.image.path= "C:\\Users\\..
去掉冒号设置.
还是不行,不过谢谢
你在Image类@Autowire Configuration?
987654326@中自动装配了
【参考方案1】:
您不能在静态属性上使用@Value。删除 static 关键字或 为您的静态变量创建一个非静态设置器:
@Component
public class Configuration
private static String imagePath;
@Value("$project.image.path")
public void setImagePath(String value)
this.imagePath = value;
【讨论】:
谢谢!这对我有用!以上是关于Spring @Value 为空 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
使用 Spring Boot 的 Feign 客户端:RequestParam.value() 在参数 0 上为空