如何从Maven公共仓库导入Talend数据集成以供tJava使用?

时间:2019-03-28 17:25:58

标签: java maven talend

我是Talend的新手,所以这可能是一个基本问题。我正在尝试创建一个Talend作业来管理Flyway DB迁移。由于Talend没有直接连接到Flyway,因此我想简单地将依赖项添加到项目的POM中,并将代码添加到我的项目中。尽管我已经读了很多文章,但我仍无法弄清楚如何在Talend中进行Maven构建,从而将组件从存储库中移到我的工作中。

根据我的读物,这是一个四步过程:

  1. 更新Talend中的默认POM.xml。
  2. 构建Talend项目以拉下罐子。
  3. 使用tLibraryLoad组件添加导入语句
  4. 使用tJava(或可能的tJavaFlex)编写实际的Flyway代码。

我认为我理解步骤1、3和4,但似乎无法弄清楚步骤2。

我已将此添加到Talend的POM中

<dependency>
    <groupId>org.flywaydb</groupId>
    <artifactId>flyway-core</artifactId>
    <version>5.2.4</version>
</dependency>

enter image description here

但是当我构建代码(右键单击项目名称并选择构建)时,Falway jar(具有任何依赖项)仍不在Talend模块中(即Talend具有的jar文件列表)。

enter image description here

如果我直接编写Java代码,则可以添加该XML代码段并进行Maven构建。做完了显然,我不理解其中的一部分,希望有人可以帮助我理解。谢谢。

我的预期结果是将Maven依赖项添加到POM,并使jar在Talend模块列表中可用,因此我可以使用tLibraryLoad组件将其导入。但是,发生的事情根本没有。当我执行Maven构建时,jar文件无法下载,甚至无法在Talend模块列表中显示为可用。

2 个答案:

答案 0 :(得分:1)

我无法使用Maven项目设置,我认为这些文档记录不充分。
您可以做的就是简单地使用tLibraryLoad通过从本地文件系统浏览并选择jar来加载jar。然后使用任何tJava组件编写代码。

tLibraryLoad (load jar) -- OnSubjobOK -- tJava (import statement and code that uses jar)

构建作业时,它将捆绑您添加到作业类路径中的jars。

答案 1 :(得分:1)

我知道这是一个非常麻烦的问题,但是在版本7.x之前,您必须手动下载所需的jar,并使用tLibraryLoad将其包含在作业中(或者(我更喜欢)将其添加为例行依赖项),然后使它成为例行地依赖于您的工作(复数)。现在,他们终于添加了期待已久的使用maven的功能。这还不是我们想要的(即直接将其添加到pom文件中以供项目广泛使用的可能性),实际上,他们建议在常规依赖项中使用maven uri。但是至少有。