我正在使用带有java的jython 2.7,目的是在我的jar文件周围创建一个python包装器(让我们称之为myJar.jar
)
这是我的python文件:
import sys
sys.path.append('/pathTo/myJar.jar')
from java.lang import Math #this works
from java.io import File # this works`
from com.myPackage.classes import myClass
print('trying to import myClass')
我运行以下命令来执行此代码:
java -jar ~/pathTo/jython.jar jyTest.py
我得到一个importError,说明:ImportError: No module named myPackage
除了使用sys.path.append()
之外,我还尝试过:
java -jar ~/pathTo/jython.jar -Dpython.path=/pathTo/myJar.jar jyTest.py
和
java -cp ~/pathTo/jython.jar:~/pathTo/myJar.jar jyTest.py
和
java -classpath ~/pathTo/myJar.jar -jar ~/pathTo/jython.jar jyTest.py
我还尝试通过将java -cp
导出到myJar.jar
来使用$CLASSPATH
。
上述方法均无效。
请注意,如果我不添加行from com.myPackage.classes import myClass
,我可以看到正在执行的print语句,因此,我的jython.jar正在按预期工作。
我按照以下说明安装了jython 2.7 独立包。 https://wiki.python.org/jython/InstallationInstructions
...因此我只有jython.jar
如何让myJar.jar
对我的python文件可见?谢谢