【问题标题】:(stderr) =256m""=="" was unexpected at this time in Pentaho Shell script(stderr) =256m""=="" 此时在 Pentaho Shell 脚本中出乎意料
【发布时间】:2018-04-18 15:06:42
【问题描述】:

这个问题和pentaho: error (stderr) =256m""=="" was unexpected at this time. while calling kitchen command (dos command using shell script job entry) from job差不多

但它在清晰度上有所不同,因为我提供了确切的细节,而且这个问题已经 3 年了,这也带来了版本问题。此外,该问题尚未得到解答,互联网上没有其他可用的解决方案,除了少数只有未回答问题的页面。因此,再次发布更详细的信息。

我使用的是 pentaho 7.0.0,在我的 kjb 文件中,有一个 shell 脚本执行器调用另一个 ktr(我知道运行 ktr 可以通过使用 Transformation 执行器来完成,但我的要求有点不同,请共同操作)。这是我正在调用的批处理文件中的命令:

C:\pentahodi\6.1.0\data-integration\Pan.bat /file:"H:/newKtr.ktr" "/param:filePath=%filePath%" /level:Basic > H:/pentahoLog.log  

但是,当我从 cmd 运行这个批处理文件时,它运行顺利并且 ktr 被调用并将 filePath 参数传递给它。但是当我使用 %filePath% (用于从 kjb 本身的参数传递)时,我得到了这个错误:

错误(版本 7.0.0.0-25,buildguy 从 2016-11-05 15.35.36 构建 1):(stderr) =256m""=="" 此时出乎意料。

在其中一个在线资源中,我了解到这个问题发生在 64 位 Windows 系统中。是这样吗?我正在运行 64 位 Windows 7。

这确实阻碍了我的所有努力。我是 pentaho 的新手,不知道如何解决这个问题。任何提示将不胜感激。

请帮忙。谢谢。

【问题讨论】:

  • 您能否具体说明一下这是什么脚本? shell 标记通常用于 POSIX 系列 shell,而 cmd.exe(和 PowerShell)则不是/不是。对有争议的特定 shell 进行标记将有助于将其呈现在合适的人面前,而不是来自“shell”标记的一堆 UNIXy 人。 :)
  • 顺便说一句,理想情况下,我们希望问题包含重现问题所需的所有内容。这意味着实际上打开pan.bat,构建一个新脚本,其中最短的子集可以创建相同的错误,并在问题中包含该简化脚本作为minimal reproducible example。有关构建简化复制器的更多指导,请参阅sscce.org 的“修剪技巧”部分。
  • 你试试 /param:"filePath=%filePath%" 而不是 "/param:filePath=%filePath%" 吗?
  • @AlainD 试过了。同样的错误。你能解释一下为什么会发生这种情况吗?
  • @CharlesDuffy 我已将其标记为 shell 和 pentaho,因为 pentaho 为运行脚本提供的模块名为“shell”。在谈到 Unix 或 Windows 的 pentaho 时,shell 没有任何区别。

标签: powershell command-line pentaho pentaho-spoon pentaho-data-integration


【解决方案1】:

作为解决方案,打开spoon.bat 文件并从PENTAHO_DI_JAVA_OPTIONS 中删除“-XX:MaxPermSize=256m”。

然后从shell执行器调用bat文件或者处理一个文件步骤

【讨论】:

  • 感谢您的解决方案!虽然现在有点晚了...... :)
猜你喜欢
  • 2014-09-11
  • 2014-01-17
  • 1970-01-01
  • 2018-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多