yml配置的静态全局变量@Value注解无法注入报错的解决方法

 @Value("${root.dir.shp-path}")
    private String shpPath;

这样是获取不到值,并且springboot无法启动,会报注入失败的错误,
pring@Value依赖注入是依赖set方法,set方法是普通的对象方法,static变量是类的属性,没有set方法;
所以给变量加上static就可以正常运行并获取值了,如果要配置动态的变量,需要另外配置getset的参数类。以及configuration的配置,这些网上有讲解。

 @Value("${root.dir.shp-path}")
    private static String shpPath;

你可能感兴趣的:(java,spring,boot,java,spring)