首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UCANACCESS_HOME系统变量未设置

UCANACCESS_HOME系统变量未设置
EN

Stack Overflow用户
提问于 2015-12-25 16:38:50
回答 3查看 4.5K关注 0票数 4

我试图使用UCanAccess将一个Java应用程序连接到Access数据库,但是当我运行我的Java应用程序时,我得到的错误是

UCANACCESS_HOME系统变量未定义.

我已经将这六个jar文件添加到NetBeans中的项目库中。我还将路径添加到了将ucanaccess-3.0.3.jar文件存储到Windows 10中的path系统变量的目录中,我还尝试创建一个新的系统变量UCANACCESS_HOME。

任何能为我指明正确方向的帮助都将不胜感激。

EN

回答 3

Stack Overflow用户

发布于 2015-12-26 08:43:04

你可以

(1)确保CLASSPATH包括ucanaccess-x.x.x.jar和UCanAccess发行版的"lib“目录中的四个jar文件,

(2)确保CLASSPATH仅包括来自“加载程序”文件夹的ucanload.jar,并在启动Java虚拟机时设置名为UCANACCESS_HOME-Dproperty=value,例如使用-Dproperty=value交换机

代码语言:javascript
复制
-DUCANACCESS_HOME=<directory into which you unpacked the UCanAccess binary distribution>

也就是说,UCANACCESS_HOME必须在解压缩UCanAccess发行版zip文件之后指向直接包含UCanAccess的目录。例如:

代码语言:javascript
复制
-DUCANACCESS_HOME=/home/gord/Downloads/JDBC/UCanAccess-3.0.1-bin

这两种配置是相互排斥的。第一种是普遍采用的。

第二种方法利用JDBC驱动程序类加载机制,以便使用不同的类加载器加载依赖项。如果应用程序已经使用了特定版本的HSQLDB、commons、commons和/或Jackcess,那么可以使用ucanload.jar来避免应用程序最终使用的那些jars的不同版本之间的冲突。换句话说,使用这种方法,您可以确保您的应用程序继续使用它以前使用过的HSQLDB、commons、commons和/或Jackcess的(其他)版本,而UCanAccess在其发行版中使用这些版本。

票数 3
EN

Stack Overflow用户

发布于 2015-12-27 04:00:56

谢谢你的帮助贾马迪。

我确定问题在于我的代码中的.mdb文件路径。我没有使用相对路径,而是使用了绝对路径。这不是Ucanaccess驱动程序的问题。

此外,我需要从项目中删除ucanload jar。

票数 1
EN

Stack Overflow用户

发布于 2018-07-06 06:05:27

经过这么多尝试,我想我终于找到了解决办法.尝试创建一个新数据库并重新启动数据库和文本编辑器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34464565

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档