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

Marco Carletti resolved CAMEL-23729.
------------------------------------
    Resolution: Fixed

> camel-google-secret-manager: NoClassDefFoundError due to protobuf 3.x/4.x 
> version mismatch
> ------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-23729
>                 URL: https://issues.apache.org/jira/browse/CAMEL-23729
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-google
>    Affects Versions: 4.18.2
>            Reporter: Marco Carletti
>            Assignee: Marco Carletti
>            Priority: Major
>             Fix For: 4.18.3
>
>
> {{camel-google-secret-manager}} fails at runtime with {{NoClassDefFoundError: 
> com/google/protobuf/RuntimeVersion$RuntimeDomain}} because 
> {{google-cloud-secretmanager:2.84.0}} transitively requires protobuf 4.x, 
> while the Camel BOM pins {{protobuf-java}} to 3.25.5.
> *Root Cause*
> {{google-cloud-secretmanager:2.84.0}} pulls 
> {{{}proto-google-cloud-secretmanager-v1:2.84.0{}}}, whose generated stubs 
> were compiled against protobuf 4.33.2. The class 
> {{com.google.protobuf.RuntimeVersion$RuntimeDomain}} was introduced in
> protobuf 4.27.0 and is referenced from {{{}ListSecretsRequest.<clinit>{}}}.
> The Camel parent BOM ({{{}parent/pom.xml{}}}) manages {{protobuf-java}} to 
> 3.25.5, which does not contain that class. Maven silently downgrades protobuf 
> at build time:
> {code:java}
>   com.google.protobuf:protobuf-java:jar:3.25.5:compile (version managed from 
> 4.33.2)
>   {code}
> At runtime, the static initializer of {{ListSecretsRequest}} fails with 
> {{{}NoClassDefFoundError{}}}.
> *Affected Scope*
> Only {{camel-google-secret-manager}} is affected. Other Google Cloud 
> components (BigQuery, PubSub, Sheets) use proto libraries still compatible 
> with protobuf 3.x:



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to