我正在使用netbeans ide(win7)开发一个基于gradle的小型javafx项目。一切正常,直到我包含 cloudant-sync 和 sqlite4java,现在每当我运行项目时我都会得到 UnsatisfiedLinkError。请问我该如何解决这个问题。
java.lang.UnsatisfiedLinkError:java.library.path 中没有 sqlite4java-win32-x64-1.0.392
请参阅下面的 gradle.build 和控制台输出:
gradle.build
应用插件:'java'
sourceCompatibility = '1.8' [compileJava, compileTestJava] .options .encoding = 'UTF-8'
// NetBeans 将根据“mainClass”属性自动添加“运行”和“调试”任务。但是,您可以在执行 // 任务之前通过传递“-PmainClass=" 参数来定义属性。// // 但是请注意,如果您愿意,您可以定义自己的“运行”和“调试”任务。在这种情况下,NetBeans 不会添加这些任务,但您可以依赖 // 您自己的实现。if (!hasProperty('mainClass')) { ext.mainClass = 'falcon3.Main' }
存储库 { mavenCentral() }
依赖项{编译'com.jfoenix:jfoenix:1.1.0'编译组:'com.cloudant',名称:'cloudant-sync-datastore-javase',版本:'2.0.0'编译组:'com.almworks。 sqlite4java',名称:'sqlite4java',版本:'1.0.392' 编译'com.aquafx-project:aquafx:0.2' testCompile 组:'junit',名称:'junit',版本:'4.10' }
和
控制台输出
执行:gradle run 参数:[-c, C:\Users\???\Documents\NetBeansProjects\Falcon3\settings.gradle]
_runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191) ... 1 更多原因:java.lang.IllegalStateException:无法打开数据库。在 com.cloudant.sync.internal.sqlite.sqlite4java.SQLiteWrapper.createNewConnection(SQLiteWrapper.java:92) 在 com.cloudant.sync.internal.sqlite.sqlite4java.SQLiteWrapper.getConnection(SQLiteWrapper.java:73) 在 com.cloudant .sync.internal.sqlite.sqlite4java.SQLiteWrapper.isOpen(SQLiteWrapper.java:121) 在 com.cloudant.sync.internal.sqlite.sqlite4java.SQLiteWrapper.beginTransaction(SQLiteWrapper.java:126) 在 com.cloudant.sync.internal .sqlite.SQLDatabaseFactory.isFtsAvailable(SQLDatabaseFactory.java:52) at com.cloudant.sync.internal.sqlite.SQLDatabaseFactory.(SQLDatabaseFactory.java:45) ... 15 更多原因:com.almworks。
FAILURE:构建失败并出现异常。
出了什么问题:任务“:运行”执行失败。
Process 'command 'C:\Program Files\Java\jdk1.8.0_102\bin\java.exe'' 以非零退出值 1 结束
尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。
构建失败
总时间:2.578 秒
构建失败(请参阅堆栈跟踪的通知窗口):gradle run