gpt4 book ai didi

java - Spring @Value 为空

转载 作者:行者123 更新时间:2023-12-04 21:28:05 24 4
gpt4 key购买 nike

正如标题所说,我的 @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

最佳答案

您不能在静态属性上使用@Value。删除 static 关键字或为您的静态变量创建一个非静态 setter :

@Component
public class Configuration {

private static String imagePath;

@Value("${project.image.path}")
public void setImagePath(String value) {
this.imagePath = value;
}
}

关于java - Spring @Value 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46486510/

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