[AWS SDK] java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.ClientConfiguration

Avatar

Avatar

thiagos66211318

Avatar

thiagos66211318

thiagos66211318

28-04-2020

Hi everyone, good afternoon.

We have a custom bundle that wires up the whole AWS SDK OSGI package and export it, so the other part of application can take advantage of the AWS SDK as well. This is working properly, we have an AEM preprocessor that pushes some data to AWS CloudSearch.

 

I'm trying to take advantage of that bundle that is already installed and running on upper environments, but I'm struggling with it and it seems that AEM is not finding the correct resolution for some classes, it gives me the NoClassDefFoundError error:

 

java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.ClientConfiguration
	at com.amazonaws.ClientConfigurationFactory.getDefaultConfig(ClientConfigurationFactory.java:46) [com.xxx.aws.cloudsearch.xxx-cloudsearch-bundle:3.0.1]
	at com.amazonaws.ClientConfigurationFactory.getConfig(ClientConfigurationFactory.java:36) [com.xxx.aws.cloudsearch.xxx-cloudsearch-bundle:3.0.1]
	at com.amazonaws.services.cloudfront.AmazonCloudFrontClient.<init>(AmazonCloudFrontClient.java:140) [com.xxx.aws.cloudsearch.xxx-cloudsearch-bundle:3.0.1]

 

 

My pom.xml looks like this:

2020-04-28-16-19-42.png

 

I took a look at http://localhost:4502/system/console/bundles and it seems that my dependency is properly resolved as we can see below:

2020-04-28-16-23-22.png

 

This is the custom bundle (xxx.xxx.xxx.cloudsearch-bundle) and how it exports the amazon dependencies:

aws-sdk.png

 

 

EDIT 1:

I've double checked and that class is being resolved by AEM:

aws.png

Anyone has an idea?

Thank you.

Regards.

 

Accepted Solutions (1)

Accepted Solutions (1)

Avatar

Avatar

Jörg_Hoh

Employee

Total Posts

3.0K

Likes

910

Correct Answer

1.0K

Avatar

Jörg_Hoh

Employee

Total Posts

3.0K

Likes

910

Correct Answer

1.0K
Jörg_Hoh
Employee

30-04-2020

This exception "

java.lang.NoClassDefFoundError: Could not initialize class com.amazonaws.ClientConfiguration

does not necessarily mean that the problem is the class com.amazonaws.ClientConfiguration itself, but that it happened within the constructor of that class. Can you show us the complete exception? 

Answers (1)

Answers (1)

Avatar

Avatar

Veena_Vikram

MVP

Avatar

Veena_Vikram

MVP

Veena_Vikram
MVP

28-04-2020

@thiagos66211318  I am not able to correctly identify the issue. But are you sure the import for ClientConfiguration is resolved properly ?