5

我已经实现了一个包含 Jython 的 Java 应用程序来运行 Python 脚本。当我从 IDE(Eclipse 或 IDEA)运行该应用程序时,一切正常,Python 脚本得到正确处理。

但是,当我将所有内容(包括该文件)打包到一个 JAR 文件(即将发布)中时,jython.jar只要 Java 应用程序尝试运行第一个 Python 脚本,就会出现以下错误:

ImportError: No module named os

所以似乎Lib没有找到包含所有标准 Python 模块的文件夹。我检查了jython.jar包含在 Java 应用程序的 JAR 文件中的文件,它确实Lib正确地包含了该文件夹。事实上,jython.jar当我从 IDE 运行应用程序时,也使用了同一个文件,它在哪里工作。

我知道可以指定-Dpython.path参数,但我不知道在这里设置什么。如何引用主应用程序 JAR 文件中的文件中的文件夹Libjython.jar

4

1 回答 1

0

我遇到了同样的问题,这是我的解决方案:在你的 python 脚本中,将 Lib 路径添加到 sys 路径。以下是代码:

import sys
libPath="C:\\jython2.7b1\\Lib"
sys.path.append(libPath)
于 2013-08-01T07:01:40.803 回答