Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
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 theaws-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?
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
Best regards
Aiming
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.
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?