如何消除虚假"参考豆...未找到" STS的警告?

时间:2015-03-09 15:11:07

标签: eclipse spring spring-integration spring-data-jpa spring-tool-suite

STS(3.6.1及其他),Spring 4.1.x(最新),Spring Integration 4.1.2

在我在Eclipse / STS中工作的许多Spring项目中,我们有很多"未找到引用的bean"警告。这些通常是指内部的Spring bean /类,而不是我们自己bean的合法错误配置。

以下是我们的一个Spring Data JPA配置中的示例:

Referenced bean 'jpaMappingContext' not found [config set: c-r-core/primary]

相关配置只是:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:mongo="http://www.springframework.org/schema/data/mongo"
xsi:schemaLocation="http://www.springframework.org/schema/data/mongo http://www.springframework.org/schema/data/mongo/spring-mongo-1.5.xsd
    http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.0.xsd
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
    http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd">

<!-- other stuff -->
<jpa:repositories base-package="com.xyz.persistence" />

在我们的Spring Integration配置中,我们会收到更多警告:

Referenced bean 'Create Text$child.Build Transmission.handler' not found [config set: c-r-integration/primary]
Referenced bean 'Create Text$child.Store ControlNumber in Header.handler' not found [config set: c-r-integration/primary]
Referenced bean 'Create Text$child.Store Parameters in Header.handler' not found [config set: c-r-integration/primary]
Referenced bean 'Create Text$child.Write IC to String.handler' not found [config set: c-r-integration/primary]
Referenced bean 'FilePoller.source' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.integration.channel.interceptor.WireTap#0' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.integration.channel.interceptor.WireTap#0' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.integration.channel.interceptor.WireTap#0' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.integration.handler.MessageHandlerChain#0$child.Store GS info in Header.handler' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.integration.handler.MessageHandlerChain#0$child.Store IC info in Header.handler' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.integration.json.JsonToObjectTransformer#0' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.jms.listener.DefaultMessageListenerContainer#0' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.jms.listener.DefaultMessageListenerContainer#0' not found [config set: c-r-integration/primary]
Referenced bean 'org.springframework.scheduling.support.PeriodicTrigger#0' not found [config set: c-r-integration/primary]

似乎我们使用Spring Integration名称空间的次数越多,这些就越多。

在旧的STS论坛中还有其他一些相关问题,还有一些关于SO,like this one,其接受的答案根本没有帮助。我已经尝试了多次清理迭代,启用和禁用Spring Bean Reference验证,但无论我做什么,这些虚假警告总会在启用验证时返回。

重复一遍,这些不是由于配置错误而导致的实际问题,或者是#34;导入支持&#34; STS中的特征(如here所述)。应用程序在运行时表现正常;这显然只是STS问题。

我们努力使我们的项目保持清除所有警告,因此这些非常混乱并隐藏真正需要我们注意的合法警告。

有没有办法解决这些问题并最终消除它们?它们甚至都是由于相同的潜在问题,还是在这里有不同的问题?

1 个答案:

答案 0 :(得分:0)

它们很可能是命名空间解析器的问题;我不确定我们是否可以解决所有这些问题,但我同意,如果我们能消除这些错误警告会很好。

现在请继续打开JIRA Issue against Spring Integration,如果需要,我们会与STS团队联系。

(对于jpa问题,你应该打开一个针对Spring Data的jira。)

编辑:我无法重现

  

找不到引用的bean'org.springframework.integration.channel.interceptor.WireTap#0'[config set:c-r-integration / primary]

你能提供一个小测试用例吗?