[ 
https://issues.apache.org/jira/browse/CAMEL-10412?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Claus Ibsen updated CAMEL-10412:
--------------------------------
    Issue Type: Improvement  (was: Bug)

> Unable to exclude CamelAutoConfiguration in Spring Boot
> -------------------------------------------------------
>
>                 Key: CAMEL-10412
>                 URL: https://issues.apache.org/jira/browse/CAMEL-10412
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-spring-boot
>    Affects Versions: 2.18.0
>            Reporter: Minh Tran
>            Priority: Minor
>
> Prior to 2.18.0, you could exclude CamelAutoConfiguration in unit tests and 
> no camel context would start up. This is useful for testing things in 
> isolation that does not need camel and is a standard thing to do in Spring 
> Boot since by default it auto configures everything it can find.
> Now with 2.18.0, there has been a lot more auto configuration classes added 
> and required to be excluded. Virtually every *AutoConfiguration class found 
> in camel-core-starter needs to be excluded. This is not practical to do.
> I have edited one file DirectComponentAutoConfiguration and added this line  
> @ConditionalOnBean(CamelAutoConfiguration.class)
> and with my unit test, I can see it no longer tries to pull in that component.
> {noformat}
> @RunWith(SpringJUnit4ClassRunner.class)
> @SpringBootTest
> public class PlainTest {
>       @Configuration
>       @EnableAutoConfiguration(exclude = { CamelAutoConfiguration.class
>                       // , DirectComponentAutoConfiguration.class, 
> DirectVmComponentAutoConfiguration.class,
>                       // LogComponentAutoConfiguration.class, 
> PropertiesComponentAutoConfiguration.class, 
> RestComponentAutoConfiguration.class,
>                       // SchedulerComponentAutoConfiguration.class, 
> SedaComponentAutoConfiguration.class, StubComponentAutoConfiguration.class,
>                       // ValidatorComponentAutoConfiguration.class, 
> VmComponentAutoConfiguration.class, XsltComponentAutoConfiguration.class,
>                       // GzipDataFormatAutoConfiguration.class, 
> SerializationDataFormatAutoConfiguration.class, 
> StringDataFormatAutoConfiguration.class,
>                       // ZipDataFormatAutoConfiguration.class, 
> BeanLanguageAutoConfiguration.class, ConstantLanguageAutoConfiguration.class,
>                       // HeaderLanguageAutoConfiguration.class
>                       //
>       })
>       public static class Config {
>       }
>       @Test
>       public void test() {
>               // do something
>       }
> }
> {noformat}
> Unfortunately I cannot put this into git and commit since I see at the top of 
> the DirectComponentAutoConfiguration file 
> {noformat}
> Generated by camel-package-maven-plugin - do not edit this file!
> {noformat}
> I'm not sure what to edit to get this to auto generate correctly with the 
> changes required so I'll leave it to you guys.
> Don't forget to update the camel-core-starter/pom.xml file and add the 
> camel-spring-boot dependency in.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to