启动项目的时候遇到:不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK
,oracle数据库版本是Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
,已经添加了orai18n
的依赖,依旧不起作用。
你好,
数据库确定是要使用 ZHS16GBK 这个字符集吗?
orai18n.jar 需要加到liquibase运行时的classpath中,你是如何添加的?
因为现在连接的数据库只是给我一个实例,我没有权限去更改,所以只能使用ZHS16GBK。
这个orai18n.jar,我是直接在build.gradle中添加的依赖。所以不应该是这样的吧
在项目的 resources
目录添加一个 liquibase.properties
,然后把 orai18n.jar
放到 resources 同级的 lib
目录(我这里以management.jar做示例):
然后 liquibase.properties
内容如下:
classpath: ../lib/orai18n.jar
试试看?
加上了,但是还是出现那个弹窗
在 liquibase.properties
里面添加:
liquibase.includeSystemClasspath: true
licenseKey: 111111
然后在系统的环境变量
配置 classpath 包含orai18n.jar 试试。
第一个参数是:include-system-classpath
第二个参数是试验用的,确保 liquibase 运行时读取了 liquibase.properties
文件,运行日志里应该会报一个warning:WARNING: The parameter 'licenseKey' was IGNORED.
我是macOS,不是Windows,mac的话该怎么添加一下?
在 IDEA 的run tab里可以看到liquibase用的哪个java:
然后在 项目中按 F4 打开项目设置,在下面对应JDK版本的classpath里添加 orai18n.jar 试试:
还是不起效果,我同事之前也遇到过这个问题,但是他是在控制台报错,并不是弹窗提示。他仅仅是在build.gradle中添加了orai18n的依赖就解决了。
哦,那可能跟Studio有关,我们问问Studio团队那边,今天他们休息,可能没有那么快回复
好的,那麻烦您了
我今天又试了一下,好像是在Mac版本的studio,才会出现无法启动并且弹窗提醒这个问题,我同事是Windows系统,他在build.gradle中添加了orai18n的依赖就可以正常运行项目。所以我推断只有Mac的studio连接字符集为ZHS16GBK
的Oracle数据库,才会无法正常启动。
按这个试试:
Please try to add this orai18n.jar to Additional DB Drivers list in Studio
Jmix Toolbar → Settings (Gear icon) → Jmix Plugin Settings… → Database Drivers → Oracle Database
好的,解决了!谢谢两位!