使用 JDBC 连接 OrientDB 的错误: Could not initialize class com.orientechnologies.orient.core.db.ODatabaseRecordThreadLocal

发布于 2021-12-06 08:08:50 字数 819 浏览 959 评论 11

一个简简单单 OrientDB 的 Java 客户端程序,无法连接到数据库,代码很简单:

/**
 * 使用 JDBC 访问 OrientDB
 * @author winterlau
 */
public class JDBCTester {

	public static void main(String[] args) throws ClassNotFoundException, SQLException {
		Class.forName("com.orientechnologies.orient.jdbc.OrientJdbcDriver");
		Connection conn = DriverManager.getConnection("jdbc:orient:remote:localhost/beerdb","root","xxxx");
		DatabaseMetaData dmd = conn.getMetaData();
		System.out.println(dmd.getDatabaseProductName() + dmd.getDatabaseProductVersion());
		conn.close();
	}

}

使用的是 OrientDB 2.2.26 ,Java 1.8.0_77 就会报上述错误。

如果换成 Java 7 的话,错误是:

com.orientechnologies.orient.core.exception.OSecurityException: Cannot create a key with 'PBKDF2WithHmacSHA1' algorithm

啥情况啊这是?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(11

虐人心 2021-12-10 02:19:09

目前没用了

岁吢 2021-12-10 02:13:43

想问问红薯,目前开源中国采用OrientDB主要应用什么业务场景,是否上线,性能如何

掩饰不了的爱 2021-12-10 02:03:43

这不太正常吧。

流心雨 2021-12-10 01:58:49

所以搞不懂为何啊

流心雨 2021-12-10 01:56:06

@壶漏子 你看变态不,我把代码增加了一行 

ODatabaseRecordThreadLocal a = ODatabaseRecordThreadLocal.INSTANCE;

就可以了,居然要手工初始化这个线程本地化。

虐人心 2021-12-09 23:39:46

我的错误肯定是跟jdk环境有关,java这点特别不好

回忆凄美了谁 2021-12-09 16:37:24

你是什么环境啊

陌若浮生 2021-12-09 16:27:57

回复
@红薯 : 1.8.0_121

如日中天 2021-12-09 12:20:01

回复
@红薯 : jar文件 concurrentlinkedhashmap-lru-1.4.2.jar orientdb-client-2.2.26.jar orientdb-core-2.2.26.jar orientdb-jdbc-2.2.26.jar orientdb-server-2.2.26.jar

拍不死你 2021-12-08 19:37:23

回复
@红薯 : 换了下jdk1.8.0_51也可以的。

少女情怀诗 2021-12-08 05:57:56

没有问题地显示了:OrientDB2.2.26

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文