Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.

AWS SDK in AEM as Cloud Service unresolved dependencies

Avatar

Level 3

Hello team,

 

We have a use case in place where we download json files from S3 and read them to create content fragments.

We are using version 1.11.141 currently. With this version, all the dependencies are resolved and things are working fine.

 

This version is very old and contains a lot of security vulnerabilities. Hence our need to use the latest version.

Dependency issues arise when we bump this to the latest version (1.12.348) or any version from the past couple of years.

 

Root pom.xml

 

<dependency>
 <groupId>com.amazonaws</groupId>
 <artifactId>aws-java-sdk-osgi</artifactId>
 <version>1.11.141</version>
 <scope>provided</scope>
</dependency>

 

 

all/pom.xml

 

<embedded>
 <groupId>com.amazonaws</groupId>
 <artifactId>aws-java-sdk-osgi</artifactId>
 <target>/apps/vendor-packages/application/install</target>
</embedded>

<dependency>
 <groupId>com.amazonaws</groupId>
 <artifactId>aws-java-sdk-osgi</artifactId>
</dependency>

 

 

core/pom.xml

 

<dependency>
 <groupId>com.amazonaws</groupId>
 <artifactId>aws-java-sdk-osgi</artifactId>
</dependency>

 

 

 

Issue with v 1.12.348

 

io.netty.bootstrap,version=[4.1,5) -- Cannot be resolved
io.netty.buffer,version=[4.1,5) -- Cannot be resolved
io.netty.channel,version=[4.1,5) -- Cannot be resolved
io.netty.channel.nio,version=[4.1,5) -- Cannot be resolved
io.netty.channel.socket.nio,version=[4.1,5) -- Cannot be resolved
io.netty.handler.codec -- Cannot be resolved
io.netty.handler.codec.http,version=[4.1,5) -- Cannot be resolved
io.netty.handler.logging,version=[4.1,5) -- Cannot be resolved
io.netty.handler.ssl,version=[4.1,5) -- Cannot be resolved
io.netty.handler.stream,version=[4.1,5) -- Cannot be resolved
io.netty.util,version=[4.1,5) -- Cannot be resolved
io.netty.util.concurrent,version=[4.1,5) -- Cannot be resolved

 

 

I tried including dependency of io.netty separately and it is still not resolving.

Instead of using aws-java-sdk-osgi, i've tried using aws-java-adk-s3 (should suffice my need) and i'm running into the issue described in this post

 

I'm using the below bnd-maven-plugin

 

<groupId>biz.aQute.bnd</groupId>
<artifactId>bnd-maven-plugin</artifactId>
<executions>
  <execution>
  <id>bnd-process</id>
  <goals>
    <goal>bnd-process</goal>
  </goals>
  <configuration>
  <bnd><![CDATA[
Import-Package: javax.annotation;version=0.0.0,*
-conditionalpackage: com.amazonaws.*
-includeresource: @aws-java-sdk-osgi-1.12.348.jar!/
                                ]]>
  </bnd>
....

 

 

Can someone help me solve this problem please  

 

Tagging @Vijayalakshmi_S , Thanks in advance

 

Thanks.

3 Replies

Avatar

Community Advisor

Hi @subsul1,

You should have all those compile-time and runtime dependencies as ti shows in above error and specify in -includeresource: Please refer to github code - the one I did recently in one of the project for https://mvnrepository.com/artifact/com.adobe.target/target-java-sdk/2.4.0 

Github: https://github.com/sansai2011/server-target/pull/1/files
Hope that helps!

Regards,

Santosh

 

Avatar

Level 3

Thanks for your time @SantoshSai 

I tried this and it is still leading to unresolved dependencies wrt AWS SDK.

 

I have used several third party dependencies and faced no issues with them, it is just AWS that is causing this issue.

Please let me know if you can think of any other resolution.

Avatar

Level 1

HI, you should check if one of those two fit your need:

<!-- https://mvnrepository.com/artifact/org.apache.servicemix.bundles/org.apache.servicemix.bundles.aws-java-sdk2 -->
<dependency>
    <groupId>org.apache.servicemix.bundles</groupId>
    <artifactId>org.apache.servicemix.bundles.aws-java-sdk2</artifactId>
    <version>2.20.17_1</version>
</dependency>

or

<!-- https://mvnrepository.com/artifact/org.apache.servicemix.bundles/org.apache.servicemix.bundles.aws-java-sdk -->
<dependency>
    <groupId>org.apache.servicemix.bundles</groupId>
    <artifactId>org.apache.servicemix.bundles.aws-java-sdk</artifactId>
    <version>1.12.420_1</version>
</dependency>