Java 使用Spring将值注入内部类时出现问题?

Java 使用Spring将值注入内部类时出现问题?,java,spring,Java,Spring,我有一个私有的静态内部类,我需要向其中注入一个值,但我没有运气 我的代码模式如下所示: @Component public final class someClassUtil { @Component private static class innerClass { private transient boolean myVar; @Value("${my.value.to.inject}") public void setM

我有一个私有的静态内部类,我需要向其中注入一个值,但我没有运气

我的代码模式如下所示:

@Component
public final class someClassUtil {

    @Component
    private static class innerClass {
        private transient boolean myVar;

        @Value("${my.value.to.inject}")
        public void setMyVar(final boolean myVar) {
            this.myVar = myVar;
        }
    } 
}

我有一种感觉,它可能与访问修饰符有关,但我尝试了许多变体,但都没有成功。有什么想法吗?

由于您的嵌套类是私有的,我担心Spring的DI机制无法调用setter,从而使其上的注释无效。

根据,您需要使用
@Value(#{my.Value.to.inject}”)
。请注意“#”而不是“$”

如果发布异常堆栈traceEthere没有抛出异常,则最好不要注入myVar,并且包含默认值false@AdamSkywalkerSpring在上下文启动期间写入日志,查看日志以查看原因Dang,我真的希望是这样,但更改后我仍然得到false而不是true。