操作系统: Windows7,Jython2.7.0FR (“最终版本”)
尝试在Jython:Manipulating an Access database from Java without ODBC中使用Gord的解决方案
我可以让Ucanaccess模块在Eclipse中工作,但当我尝试从CLI运行时就不行了。
# -*- coding: utf-8 -*-
import java, sys
jars_dir = 'D:\\sysadmin\\Resources\\Java jar files\\'
sys.path.append( jars_dir + 'commons-lang-2.6.jar' )
sys.path.append( jars_dir + 'commons-logging-1.2.jar' )
sys.path.append( jars_dir + 'hsqldb.jar' )
sys.path.append( jars_dir + 'jackcess-2.1.2.jar' )
sys.path.append( jars_dir + 'ucanaccess-3.0.2.jar' )
import net.ucanaccess.jdbc.UcanaccessDriver
import net.ucanaccess
print( '# appear to have imported UcanaccessDriver' )
conn = java.sql.DriverManager.getConnection( 'jdbc:ucanaccess://D:/TESTING.mdb' )
print( '# conn OK...') 当我在Eclipse中运行它时,它会打印出"# conn OK“。当我从CLI运行它时,它会打印出"#似乎已经导入了.“但随后抛出了一个错误:

(注意,这个输出是复制的到:它确实是一个CLI运行)
有人知道我为什么会得到“没有合适的司机.”?我尝试了各种排列与反斜杠,而不是在getConnection中的正向排列。都没有用。
顺便说一句,如果这与此相关,这是我用来运行这个东西的.bat文件的一个摘录:
cd "%SOFTWARE_PROJECTS%\workspace\Jython scratchpad\src\jython_scratchpad_root"
REM this is probably irrelevant and doesn't seem to work with Jython2.7.0FR. The jars are being loaded by sys.path.append, obviously
set CLASSPATH=.;"%SYSADMIN%\resources\java jar files/*"
D:\apps\jython2.7.0\bin\jython loading_test.py 发布于 2015-10-30 22:16:31
看来,sys.path与PATH环境变量的关系更大,而与CLASSPATH环境变量关系更大。已经测试了以下两种方法,并使用Jython2.7.0从Windows命令行运行了一个名为"jyTest.py“的脚本
方法1:在启动之前从批处理文件(或shell脚本)设置CLASSPATH
SET CLASSPATH=C:/Users/Public/Downloads/UCanAccess/ucanaccess-3.0.2.jar;C:/Users/Public/Downloads/UCanAccess/lib/commons-lang-2.6.jar;C:/Users/Public/Downloads/UCanAccess/lib/commons-logging-1.1.1.jar;C:/Users/Public/Downloads/UCanAccess/lib/hsqldb.jar;C:/Users/Public/Downloads/UCanAccess/lib/jackcess-2.1.2.jar;.
c:\jython2.7.0\bin\jython jyTest.py(用于Linux。阿尔。这将是export CLASSPATH ...和冒号分隔符,而不是分号。)
-J-cp方法2:在调用jythonJythonJython时使用来设置CLASSPATH
c:\jython2.7.0\bin\jython -J-cp C:/Users/Public/Downloads/UCanAccess/ucanaccess-3.0.2.jar;C:/Users/Public/Downloads/UCanAccess/lib/commons-lang-2.6.jar;C:/Users/Public/Downloads/UCanAccess/lib/commons-logging-1.1.1.jar;C:/Users/Public/Downloads/UCanAccess/lib/hsqldb.jar;C:/Users/Public/Downloads/UCanAccess/lib/jackcess-2.1.2.jar;. jyTest.py(同样,Linux和朋友需要用冒号而不是分号分隔-cp条目。)
https://stackoverflow.com/questions/33438374
复制相似问题