我似乎遇到了障碍,根本无法解决这个问题,任何人都可以帮我弄清楚为什么我无法导入java模块吗?
错误:
Traceback (most recent call last):
File "./datasource_config.py", line 3, in ?
import java
ImportError: No module named java
的java:
13:30:05 # which java
/usr/bin/java
脚本开头
#!/usr/bin/python
import sys
import java
from java.util import Properties
from java.io import FileInputStream
from org.python.modules import time
lineSep = java.lang.System.getProperty('line.separator')
def datasource(cluster,user,password,url,env,jdbc_driver,timeOut,maxConn,minConn,reapTime,unusdTimeout,agedTimeout):
#Declare global variables
global AdminConfig
global AdminControl
有人可以帮我确定这意味着什么吗?
13:45:07 # ./jython -v /opt/websphere/datasource_config.py
*sys-package-mgr*: can't create package cache dir, '/usr/lib/jython-25/cachedir/packages'
import: 'exceptions' as org.python.core.exceptions in builtin modules
import: 'site' as /usr/lib/jython-25/Lib/site.py
import: 'sys' as sys in builtin modules
import: 'os' as /usr/lib/jython-25/Lib/os.py
import: 'errno' as org.python.modules.errno in builtin modules
import: 'posix' as org.python.modules.posix.PosixModule in builtin modules
import: 'posixpath' as /usr/lib/jython-25/Lib/posixpath.py
import: 'stat' as /usr/lib/jython-25/Lib/stat.py
import: 'Properties' as java class
import: 'FileInputStream' as java class
Traceback (most recent call last):
File "/opt/websphere/datasource_config.py", line 5, in <module>
from org.python.modules import time
ImportError: cannot import name time
答案 0 :(得分:0)
错误在这里会产生误导。问题可能是您在目录/ usr / lib / jython-25 / cachedir / packages中没有权限,也可能在父目录cachedir中没有权限。如果你在wsadmin.sh启动时查看输出的第一行,它实际上暗示了这一点。
答案 1 :(得分:-1)
你无法将java本身“导入”到python中。 import
语句将导入 python 模块。
如果你需要从python调用Java,你需要找到一个java-&gt; python库。
但是,您的示例代码建议您只是尝试读取(或写入)一个文件,您可以直接在python中执行该操作,而不使用java。