Ho un modulo processore molla xd che ha una dependecy ad un progetto con molla dati JPA:grado di distribuire modulo processore molla xd utilizzando molla-dati-dell'APP per xd-singlenode
pom.xml del modulo xd-processor:
<dependencies>
<dependency>
<groupId>org.test.common</groupId>
<artifactId>org.test.common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
pom.xml di org.test.common:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
</dependencies>
Se eseguo il integration test tutto funziona bene. Ma la distribuzione per xD-singlenode (1.2.0.RELEASE) non riesce con il seguente errore:
2015-06-21T20:50:35+0200 1.2.0.RELEASE ERROR DeploymentsPathChildrenCache-0 boot.SpringApplication - Application startup failed
java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.jpaVendorAdapter
at org.springframework.boot.autoconfigure.condition.SpringBootCondition.matches(SpringBootCondition.java:58) ~[spring-boot-autoconfigure-1.2.3.RELEASE.jar:1.2.3.RELEASE]
...
Caused by: java.lang.IllegalArgumentException: @ConditionalOnMissingBean annotations must specify at least one bean (type, name or annotation)
...
è possibile verifica il campione completo su github.
Cosa sto sbagliando? Qualsiasi aiuto sarebbe apprezzato.
E se si tenta di eseguire l'aggiornamento alla versione 1.2.5 di 'primavera-boot-starter-dati- jpa'. Mi sembra un bug in primavera - come potete vedere sulla linea 87 a 'https://github.com/spring-projects/spring-boot/blob/master/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/orm/jpa/JpaBaseConfiguration.java' il metodo è davvero annotato senza parametri. – defectus
@defectus quindi perché funziona il test di integrazione? – domi
Controlla [API] (http://docs.spring.io/autorepo/docs/spring-boot/1.1.6.RELEASE/api/org/springframework/boot/autoconfigure/condition/ConditionalOnMissingBean.html) forse perché hai già avere un fagiolo con lo stesso nome? 'Condizionale che corrisponde solo quando le classi bean e/oi nomi specificati non sono già contenuti in BeanFactory. –