【问题标题】:My class cannot find a python file in the jar我的班级在 jar 中找不到 python 文件
【发布时间】:2011-12-06 19:58:29
【问题描述】:

我有一个启动 python 脚本的 jar 文件。如果我的 jar 文件位于工作目录的根目录,它就可以工作。如果我将它移出工作目录,它就再也找不到 python 脚本了。为什么我查找脚本文件的调用没有在 jar 中查找?我使用 ./(路径)。为什么它会自动在工作目录中查找?我以为它会是独立的。

【问题讨论】:

  • 您是否正在寻找file 的python 脚本?还是resource?您可能想分享有关您的问题的更多信息,因为现在任何人都可以做的就是猜测。我的猜测是您正在尝试将 Python 脚本作为文件读取,而 jar 中不存在文件。
  • 我的代码看起来像 Process p = r.exec("python ./myPath/myScript.py");我不确定,这意味着作为一个文件?
  • 这是一个系统命令,所以是的,您正在寻找一个文件。请在下面查看对我的答案的编辑。

标签: java python path jar launch


【解决方案1】:

重新发布我的猜测作为答案:
您是否正在寻找作为文件的 python 脚本?还是作为资源?您可能想分享有关您的问题的更多信息,因为现在任何人都可以做的就是猜测。我的猜测是您正在尝试将 Python 脚本作为文件读取,而 jar 中不存在文件。为了解决这个问题,要么将 Python 脚本作为 Java 之外的文件读取,要么将其作为 jar 内的资源来查找。如果是后者,我不确定你是否可以运行脚本。

更多内容请看此链接:stackoverflow: can-i-make-a-jar-execute-a-python-script

另一个聪明的选择:stackoverflow: how-do-you-invoke-a-python-script-inside-a-jar-file-using-python

【讨论】:

  • 如果我将我的 python 脚本转换为 Jython 并从 Main 类执行该脚本会怎样?现在我的 Main 类正在尝试执行 Python 脚本。
  • 我现在将研究 Jython,我以为我已经很接近了,直到我将我的 Java 代码放入一个 jar 文件中,这一切都有效。
猜你喜欢
  • 2014-06-18
  • 1970-01-01
  • 2013-05-26
  • 2016-06-01
  • 2013-09-17
  • 2013-10-14
相关资源
最近更新 更多