Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
WWong1683187644
Contributor III
Contributor III

Jar version issue

Hi,

I am using java code routine to connect AWS secret manager to get the secret value, the routine requires aws-java-sdk-core-1.7.25 jar.

I also notice that tS3Connection component in my current studio version is using aws-java-sdk-core-1.12.315 jar.

1) This has created a conflict when i am using both together in same job. At the end i have to remove the older version from this job, which is

aws-java-sdk-core-1.7.25 to make it works.

2) Inside the same project, another situation, i have a main job using the java routine, subjob is using S3 component, now i have a problem, due to i remove the older jar version, now the main job fail to run, right now i temporary add in the

tS3Connection

component inside and close the connection directly afterward so that it can load the

aws-java-sdk-core jar.

This can works but actually i don't want the S3 component in main job, i force to use it because i need to load the jar.

I am thinking another workaround is using tLibraryLoad to load the jar manually, but i also worry if in future after i update the studio, the aws-java-sdk-core version might be different again, hence causing conflict because i have define the version inside tLibraryLoad.

Can anyone advise a permanent solution that can solve this jar versioning issue?

Labels (3)
3 Replies
Anonymous
Not applicable

Hello @Wei Lun Wong​ ,

One possible permanent solution is to upgrade all the aws-java-sdk-core to the version 1.12.315 for all the components which using such jar in Talend Modules view

Please refer to the article https://help.talend.com/r/en-US/8.0/studio-user-guide/customizing-maven-uri-for-external-module-deployment

0695b00000kXvAcAAK.pngBest regards

Aiming

 

WWong1683187644
Contributor III
Contributor III
Author

thx @Aiming Chen​ . But this is not a permanent solution, right? Let say in future, the studio is upgraded, maybe the sdk version comes along with S3 component is updated too, then again it will cause the conflict, i need to manual update the library again.

I am thinking is there a way that i can set the java code routine always use the latest sdk used by S3 component without manual intervention.

WWong1683187644
Contributor III
Contributor III
Author

Update:

I notice one interesting fact.

When i was having the library conflict issue, i had to remove the old version jar to make it works.

But after that, i tried reupload the same jar again, and it works 😳 but this time i notice the Maven URI is different:

The one not working was: mvn:org.talend.libraries/aws-java-sdk-core-1.11.779/6.0.0-SNAPSHOT/jar

The working one is: mvn:com.amazonaws/aws-java-sdk-core/1.11.779/jar

Even though both are old version jar, but somehow mvn:com.amazonaws works.

Does anyone able to explain why this happen? how the Maven URI works actually?