Five Stars

Auto downloading external modules for a custom component in Open Studio

Hi Everyone, 

I'm in the middle of a custom component development and now faced an issue and I'd like to check with you to see if there is an option to solve this in an elegant way.

Most dependency jars (like the Jackson databinding or the Jersey client) that my component is using can be found on the  nexus repository that Talend Open Studio (6.4) uses for fetching the dependency jars, but now I need to use Apache Jena dependencies for querying RDF graphs with SPARQL. Unfortunately, the Jena artifacts are not uploaded there. Smiley Sad

 

The problem with this only that the users who'd like to use the component should download the external dependency jars one-by-one and set them up manually, because the TOS unable to download and install these resources from http://talend-update.talend.com. Setting up manually the dependency jars is not a convenient way from the user's point of view. :/

I understand that you don't want to upload and host so many resources there and also see the drawback if many client want to fetch resources from that repo, but I was wondering if it's possible to specify new repositories e.g. https://repository.apache.org/content/repositories/releases/ in the Studio that can be used when trying to fetch external modules? 

 

- If it's not possible to add alternative repositories in TOS, is there a way to request for new libraries to be added to the Talend's Nexus? Smiley Happy

I've also checked the related documentations and questions, but I cannot find answer for my questions so far.

- Installing external modules
- Install external modules


Similar questions

- How to Install external modules?
- Download and install all modules is disabled and unable to download automatically
- Cannot find JAR files
- Ojdbc7.jar is not available and how to configure in TDI 6.4
- MYSql Plugin giving error

 

Thanks for your answers in advance,

Zoltán

1 ACCEPTED SOLUTION

Accepted Solutions
Moderator

Re: Auto downloading external modules for a custom component in Open Studio

Hello,

You can set preferences for Talend Studio to the check for updates of custom libraries on the Nexus server, which will  be available in talend subscription solution not open studio.

TalendHelpCenter:Nexus update server preferences (Talend > Nexus > Libraries)

Best regards

Sabrina

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
2 REPLIES
Moderator

Re: Auto downloading external modules for a custom component in Open Studio

Hello,

You can set preferences for Talend Studio to the check for updates of custom libraries on the Nexus server, which will  be available in talend subscription solution not open studio.

TalendHelpCenter:Nexus update server preferences (Talend > Nexus > Libraries)

Best regards

Sabrina

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Five Stars

Re: Auto downloading external modules for a custom component in Open Studio

Hi Sabrina,

 

I appreciate the response, it's good to know that the Subscription version of Talend contains an option to configure a local nexus repository!

 

Actually, my situation is quite different because what concerns me if I uploaded a custom component to Talend Exchange which depends on a 3rd party library which is not present in http://talend-update.talend.com and when someone would download it, the user will need to manually download my component's dependency as well and configure it on their end.

 

It happens because the remote nexus server address is hard coded here: https://github.com/Talend/tcommon-studio-se/blob/d5003fef0a856183eb4d97125a48cfdcaf960ef4/main/plugi...

 

A workaround would be to pass a system property for this key: "org.talend.libraries.repo.url" to override the default value so when the remote artifact server (https://github.com/Talend/tcommon-studio-se/blob/d5003fef0a856183eb4d97125a48cfdcaf960ef4/main/plugi...) is used on the first time when the component is installed on a new environment, the dependency library could be automatically downloaded: https://github.com/Talend/tcommon-studio-se/blob/d5003fef0a856183eb4d97125a48cfdcaf960ef4/main/plugi...

 

Just an improvement idea for the component development team to add a possibility in the Studio to pass more remote repository addresses beside the default one. Smiley Happy

 

Thank you,
Zoltán