Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Join us to spark ideas for how to put the latest capabilities into action. Register here!
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?