Is there already a working method to use external libraries? tLibraryLoad and routine dependencies are definitely tip-top solutions which cannot be applied in real word scenario. How do you manage (sub) dependencies? Have tried to edit Project Properties > Maven > Default > Project, in vain
I can't believe such an issue is neglected.
Can you elaborate on your exact problem? I've been using Talend for a number of years, have not experienced issues making use of the supplied functionality and I have used a lot of third party Jars. Of course, I am fully open to the possibility that I have not come across the issue you are experiencing, but maybe I can give you some advice?
Thank you @rhall_2_0 for coming to this thread.
My problem is the inability to manage module dependencies. There is a frequent situation when you need to include external tools, most of the times this involves a lot of sub-dependencies (jars). For instance, how would you use https://jersey.github.io/ in your both routines and jobs? Simply adding
<dependency> <groupId>org.glassfish.jersey.core</groupId> <artifactId>jersey-client</artifactId> <version>2.25.1</version> </dependency> <dependency> <groupId>org.glassfish.jersey.media</groupId> <artifactId>jersey-media-json-jackson</artifactId> <version>2.25.1</version> </dependency>
in project properties dos not suffice. The jars from maven repository are not being automatically included.
Sorry about the delay in getting back to you. I see your issue. Providing dependencies like this would be a nice feature. I will investigate to see if this has been raised previously. In the meantime, a method that helps with this can be seen below. It is not as elegant as the method you are looking for, but does work.
Hi @rhall_2_0 ,
Thank you for your suggestion but as I have already mentioned in the post, I don't find adding jars manually to be an applicable solution. Turns out there is a Jira ticket for this dated back to 2017 here but I am not sure I understand the current status of this issue.
Meanwhile, waiting for the magic to happen
I wanted to second to the poster's concern.
Maven provides all the trimmings of a modern workflow, A Talend project should be a standard maven project, and should build using the standard maven workflow. You should be able to add cross project routines, and dependencies for project routines, by adding a maven dependency. In fact, there is no legitimate reason components shouldn't be managed as a maven dependencies, as they are necessary to start a build.
This is a core level concern, and should be part of maintaining a "relatively" modern tool set. (not that modern either, just to help clarify how core this really is). It's part of what any developer is looking at when considering what ecosystem will be most productive and robust.
A developer shouldn't need to configure or determine a directory a dependency is placed in, or reference specific files in a dependency, such as jars. A developer shouldn't even need to answer which repository contains a given dependency, assuming their maven config is correct. Simply adding the maven coordinates in the project should set the rest in motion. When a build happens, dependencies are checked, are retrieved via maven if missing, and then the build begins. This is the standard Java Maven workflow. All of it core developer level concerns, not concerns existing only when working in an enterprise.
I understand your concerns and have spoken to R&D about this issue. Talend produce a suite of products covering data integration, data prep, data maintenance, data quality, data management, big data, application integration, cloud integration, etc. It is aimed at users who specialise in those domains. While many of the products generate Java code and allow users to incorporate third party libraries, the priority for R&D has always been to advance in the domains listed above and not necessarily focus on Java IDE functionality. The functionality provided around third party libraries allows users to do what they need to do, but I agree it could be made much easier.
I have raised a Jira with R&D which can be found here: https://jira.talendforge.org/browse/TUP-23345
Please feel free to vote for this feature request (and invite your colleagues to do so as well).
Talend named a Leader.
Kickstart your first data integration and ETL projects.
Watch the recorded webinar!
Learn how and why companies are moving to the Cloud
Accelerate your data lake projects with an agile approach
Create systems and workflow to manage clean data ingestion and data transformation.