JiriOndrusek opened a new issue #2519:
URL: https://github.com/apache/camel-quarkus/issues/2519


   Some extension are leveraging extensions, which contains producers for some 
beans. E.g. `google-storage` (possibly `minio`)
   Google-storage extension contains `StorageProducer`, which creates 
`Storage`. Camel component autowires `Storage` into its configuration. 
   If user tries to leverage this producer with a route using it. It doesn't 
work and following warning is shown:
   
   ```
   
================================================================================
   CDI: programmatic lookup problem detected
   -----------------------------------------
   At least one bean matched the required type and qualifiers but was marked as 
unused and removed during build
   Removed beans:
           - PRODUCER_METHOD bean 
io.quarkiverse.googlecloudservices.storage.runtime.StorageProducer#storage() 
[types=[com.google.cloud.Service<com.google.cloud.storage.StorageOptions>, 
interface com.google.cloud.storage.Storage], 
qualifiers=[@javax.enterprise.inject.Default()]]                                
                                                                                
                                                                                
        
   Required type: interface com.google.cloud.storage.Storage
   Required qualifiers: []
   Solutions:
           - Application developers can eliminate false positives via the 
@Unremovable annotation
           - Extensions can eliminate false positives via build items, e.g. 
using the UnremovableBeanBuildItem
           - See also 
https://quarkus.io/guides/cdi-reference#remove_unused_beans
   
================================================================================
   ```
   
   Problem is caused by the fact, that quartkus does not know about autowired 
bean and therefore marks producer as unused and removes it.
   
   If I inject bean into my code,  quarkus reconizes it, bean is created and 
autowired into component.
   
   ```
   @Inject
       Storage storage;
   ```
   
   It would be nice if autowired beans from camel compoinents are recognized by 
quarkus. This would make configuration of some clients/components much easier 
for users.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to