将外部 Jar 添加到 Pentaho Kettle
Posted
技术标签:
【中文标题】将外部 Jar 添加到 Pentaho Kettle【英文标题】:Adding external Jar to Pentaho Kettle 【发布时间】:2014-06-09 18:44:45 【问题描述】:我正在开发 Pentaho Kettle 5.0.1 版。在我的一个转换中,我正在使用 javascript 组件,我正在调用位于 JAR 中的方法,该方法已复制到数据集成的 lib 文件夹中,并且在我的本地一切正常。但是在我的开发环境中(我使用厨房运行它)由于服务器的限制,我无权将我的 Jar 文件复制到 lib 文件夹。有没有其他方法可以在运行时提供我的自定义 Jar 的路径,以便 Kettle Job/Transformation 可以在执行时使用它。除了 data-integration/lib 之外,Kettle 是否可以选择 Jar 位置?任何帮助将不胜感激。
【问题讨论】:
@codek :请看一下。感谢您的帮助。 @Brian.D.Myers : 请在这里帮忙 【参考方案1】:查看 kitchen.sh(和 pan.sh)。在某些时候,脚本开始向类路径添加内容。您可以在该类路径中添加更多文件夹。
不过,您仍然需要编辑 kitchen.sh 文件的权限。如果您不能这样做,我建议您在单独的位置创建一份可以编写的 kitchen.sh 副本,并将 $BASEDIR 文件夹更改为实际的 PDI 安装,以便厨房可以位于其他位置。
【讨论】:
你能告诉我如何为厨房/锅添加类路径吗?或重定向到相关文档。 AFAIK,文档不多。但是阅读 .sh 文件,您可以在第 15-25 行找到类路径定义。这很简单。【参考方案2】:如果您有权限,您可以将您的 jar 放在另一个目录中,然后在您在 data-integration\launcher 中找到的 launcher.properties 中指定此目录后。 例如:如果您将 jar 放在此目录中:/export/home。 在 launcher.properties 中:您将添加此路径并准确地添加 library=../test:../lib:../libswt:../export/home
【讨论】:
以上是关于将外部 Jar 添加到 Pentaho Kettle的主要内容,如果未能解决你的问题,请参考以下文章