当前位置: 首页 > 知识库问答 >
问题:

Spring Boot无法从依赖项模块中找到classpath属性

仲孙飞文
2023-03-14

我目前有一个Spring Boot应用程序,它依赖于Java模块。这个Java模块有一些类路径属性。当我从Spring Boot应用程序的Java模块中@autowired了一个bean,并用@bean注释定义这个bean,然后运行Spring Boot应用程序时,它将抛出错误。


2017-02-07 12:16:03.188  WARN 17620 --- [on(4)-127.0.0.1] ationConfigEmbeddedWebApplicationContext : 
Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'MyService': Unsatisfied dependency expressed through method 'setClassPathProperty' parameter 0; nested exception is org.springframework.beans.factory.BeanExpressionException: Expression parsing failed; nested exception is org.springframework.expression.spel.SpelEvaluationException: EL1008E: Property or field 'myClassPathProperties' cannot be found on object of type 'org.springframework.beans.factory.config.BeanExpressionContext' - maybe not public?
src/main/resources/myproject-context.xml
<util:properties id="myClassPathProperties" location="classpath:myproject.properties" />
@Value("#{myClassPathProperties['property.x']}")
public void setClassPathProperty(String x) {
    this.x = x;
}
@Bean (name = "mailSubscriptionDao")
public MyService getMyService() {
    return new MyServiceImpl();
}

共有1个答案

狄令
2023-03-14

尝试注入整个properties对象

@Autowired    
Properties myClassPathProperties;

如果这样做有效,您就知道您已经正确加载了myproject-context.xml。您还可以使用调试器查看名为'property.x'的属性是否存在。

 类似资料:
  • 因此,我为放置了这两个文件。但是Spring不能从库里找到豆子吗? 编辑: 从图书馆,我有: 所以我为“com.my.package.mylibrary.domain”添加了@EntityScan,但这会使应用程序无限期地卡死。

  • 在使用scalatest时,我遇到了一个奇怪的问题。我有一个带有多个模块的maven项目。如果我直接在模块中执行mvn测试。它可以正常工作,但如果在根文件夹中执行,它会抱怨编译时缺少包(依赖项)。 我的配置如下所示: 插件配置: 如果我从maven scala插件中删除目标,它将编译,但scalatest将找不到测试源并退出,并且没有执行任何测试 : 你知道我做错了什么吗?! 干杯

  • 我在Maven中有一个相当简单的带有子模块的项目结构: 在中,我定义了所有子模块的属性,如库版本或插件配置: 直接在节点中设置库版本。 在中设置节点。 尝试不同的库版本。 使用以及库是否存在。 在中运行。 在中运行。 在中运行 在中运行。 在中运行。

  • 我有以下目录结构: Android模块依赖于与AndroidProject在根目录中处于同一级别的所有java gradle项目。 在AndroidProject/settings中。gradle我有: 然后在AndroidProject/AndroidModule/build中。gradle我的依赖项设置如下: 当我调用时,这种依赖结构完美地工作和项目构建 在AndroidProject/bui

  • null 我尝试在使用/gradlew clean后构建project,但没有任何帮助,我尝试使用不同版本的依赖关系,不同版本的gradle和只对java使用依赖关系,只对kotlin使用依赖关系,多次使用不同的配置,但没有任何帮助。奇怪的是,XML文件之外的一切似乎都很好,我可以很好地使用这个库中的类,但我需要用PreferenceScreen类进行布局,它不能识别它。

  • 我似乎无法获得最新版本的构建工具。我怀疑这与Gradle的代理设置有关。我已经很好地看了网上,但仍然不能找到一个解决办法。我用的是2.1级。 SystemProp.http.ProxyHost=代理SystemProp.http.ProxyPort=80 SystemProp.http.ProxyUser=MyUserName SystemProp.http.ProxyPassword=密码 Sy