更新:我只是检查了我使用的最新的JDBC jar,并且缺少地图/Linux/arm/libsqlitejdbc.so,可以通过从某个地方下载该文件来解决此问题吗?在任何地方都找不到。
编辑:问题似乎是这个,但是我不知道如何解决这个问题。
Caused by: java.lang.Exception: Error loading native library: /org/sqlite/native/Linux/arm/libsqlitejdbc.so
我正在尝试在树莓派上使用SQLite数据库。但是我无法使其正常工作。我得到下面发布的输出。我正在使用JDBC驱动程序。该代码在我的主计算机上工作正常。我到处搜索,但找不到解决方案。如果这很重要,我会将代码打包到一个Jar文件中。
相关代码:
private final String dbLocation = "jdbc:sqlite:" + System.getProperty("user.home") + "/ServerSQLite.db"; public SQLServer() throws ClassNotFoundException { System.out.println("DB location: " + dbLocation); Connection connection = null; Class.forName("org.sqlite.JDBC"); try { // create a database connection connection = DriverManager.getConnection(dbLocation);
输出:
DB location: jdbc:sqlite:/usr/share/tomcat7/ServerSQLite.db Error opening connection
编辑:具有硬编码位置的相同问题,应同时具有读写权限:
jdbc:sqlite:/home/pi/ServerSQLite.db Error opening connection
感谢我能得到的任何帮助:)
编辑2:以为我打印了堆栈跟踪,但不是在这里:
java.sql.SQLException: Error opening connection ...Lots of exception Caused by: java.lang.Exception: Error loading native library: /org/sqlite/native/Linux/arm/libsqlitejdbc.so at org.sqlite.SQLiteJDBCLoader.loadSQLiteNativeLibrary(SQLiteJDBCLoader.java:241) ... at org.sqlite.SQLiteConnection.open(SQLiteConnection.java:175) ... 29 more Error opening connection
问题似乎是由以下原因引起的:
java.lang.Exception: Error loading native library: /org/sqlite/native/Linux/arm/libsqlitejdbc.so
您需要下载一个内置的SQLite库。我只找到一个可以得到它的地方:https : //bitbucket.org/xerial/sqlite- jdbc/issue/79/compile-for-arm