0

最新バージョンの Java (java/jdk1.7.0_25) と tomcat (apache-tomcat-7.0.42) を搭載した Linux ボックスがあります。戦争を展開すると、次のようになります。

ERROR 2013-07-12 09:55:36,591: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'engageOrderConfig': Invocation of init method failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'deliveryDtoToEngageRetailTransactionDelivery': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: com.company.engage.adapter.converter.customer.CustomerDTOToRetailTransactionCustomerExtension com.company.engage.order.adapter.converter.DeliveryDtoToEngageRetailTransactionDelivery.customerConverter; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.company.engage.adapter.converter.customer.CustomerDTOToRetailTransactionCustomerExtension] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

そして、他のいくつか...

問題は、この戦争を別の Linux ボックスに展開することです。問題なく開始されます。

Tomcat のいくつかのバージョンを試しましたが、OpenJDK に変更しました。また、jar をエラーなしで展開している Linux ボックスから Tomcat をコピーすると、同じエラーが発生します。

誰でもこれに光を当てることができますか?

編集:完全なスタックトレース

4

1 に答える 1

0

Bean の例の依存関係に注釈修飾子を追加します。

public interface I{

}

public class IImpl1 implements I {
}

public class IImpl2 implements I {
}

class A {
//Without qualifier the exception that you see will be thrown
@Qualifier("impl1")

@Autowired
private I i;
}
于 2015-11-04T15:30:02.053 に答える