1

我有一个 python 应用程序正在尝试加载一些 Java 库(特别是 Axis2 Web 服务)。当我通过 PyDev 项目源文件夹在 Eclipse 中添加必要的 jar 时,一切似乎都运行良好。但是,我希望能够在运行时通过添加来做到这一点sys.path,但是我的应用程序似乎无法正常工作。

在这两种情况下,我都可以很好地加载罐子,但是必须有所不同才能得到不同的结果。我的问题是,通过sys.path运行时添加 jarsys.path.append()与传递-D给 jython 解释器之间有区别吗?

4

1 回答 1

0

事实证明,问题在于 Eclipse 启动 Jython 解释器的方式与从命令行手动启动 Jython 的方式不同。在 Eclipse Run Configuration 窗格中,有一种方法可以查看用于运行应用程序的命令。我的看起来像这样:

 /usr/lib/jvm/java-7-openjdk-i386/bin/java 
   -classpath /usr/local/lib/jython2.5.3/jython.jar:... 
   org.python.util.jython 
   -Dpython.path=... 
   myScript.py

(注意:为了便于阅读,我添加了换行符)

因此,似乎 Jython 是从 Java 启动的,并且除了 python 路径之外,还必须为 Java 类路径提供路径。

于 2012-11-19T18:56:57.483 回答