我正在使用Windows批处理文件调用Pentaho Data集成作业,间歇性地,作业无限期挂起。
Pentaho日志中的错误消息如下:
06:43:37,951 ERROR [BlueprintContainerImpl] Unable to start blueprint container for bundle pdi-dataservice-server-plugin due to unresolved dependencies [(objectClass=org.pentaho.metaverse.api.ILineageClient)]
java.util.concurrent.TimeoutException
at org.apache.aries.blueprint.container.BlueprintContainerImpl$1.run(BlueprintContainerImpl.java:336)
at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:48)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
我能够在类似的行上找到一些问题,这表明这是一个缓存问题。请帮忙!
答案 0 :(得分:0)
unresolved dependencies [(objectClass=org.pentaho.metaverse.api.ILineageClient)]
这意味着蓝图文件具有对接口为org.pentaho.metaverse.api.ILineageClient
的服务的强制引用。该服务似乎没有出现,所以蓝图在超时后放弃。
您现在需要找到提供此服务的软件包,并确定它无法正确启动的原因。
答案 1 :(得分:0)
当你的软件包启动时,它找不到这个界面org.pentaho.metaverse.api.ILineageClient。所以它保持在Graceperiod State。
因为它在清除缓存后有效,我建议您:
<强> 1 强>: 对公开此接口的软件包进行故障排除:使用karaf命令行中的 diag 命令查找无法正常启动的原因。您也可以使用 headers 命令来确认此界面已导出
2 :您可以将此引用作为optionnal放在消费者包中,如下所示:
<reference id="give an id"
interface="org.pentaho.metaverse.api.ILineageClient"
availability="optional">
</reference>
3 :验证捆绑包的启动级别:在features.xml中安装捆绑包时,可以使用start-level =“...”处理此问题。
答案 2 :(得分:0)
我通过使用&#34; call&#34;解决了同样的问题。 例如:
cd "C:\Program Files (x86)\Kettle"
call kitchen.bat -file:"C:\Elekta Projects\CE_Activities\MAIN.kjb" -level:Minimal
答案 3 :(得分:0)
我添加了call语句,还删除了/ pentaho-server / tomcat / temp的内容
答案 4 :(得分:0)
您可能必须将Kettle工具的版本升级到8.0.0
在这里您可以找到问题: https://jira.pentaho.com/browse/PDI-16368