如何设置一个使用 sqlite4java 的简单 gradle 项目?
我正在使用sqlite4java启动一个简单的java测试项目,并使用java进行构建。
我可以很容易地下载核心sqlite4java库,但我不确定获得gradle下载本机库并将它们放在正确位置的最佳(任何!)方法是什么。
这是我的 build.gradle 文件:
apply plugin: 'java'
/* We use Java 1.7 */
sourceCompatibility = 1.7
targetCompatibility = 1.7
version = '1.0'
repositories {
mavenCentral()
}
sourceSets {
main {
java.srcDir 'src'
output.classesDir = 'build/main'
}
test {
java.srcDir 'test'
output.classesDir = 'build/test'
}
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.11'
compile "com.almworks.sqlite4java:sqlite4java:1.0.392"
compile "com.almworks.sqlite4java:libsqlite4java-osx:1.0.392"
}
但是当我运行一个简单的测试时,我得到:
TestTest > testSqlite4Basic FAILED
com.almworks.sqlite4java.SQLiteException at TestTest.java:15
Caused by: java.lang.UnsatisfiedLinkError at TestTest.java:15
(我是在IntelliJ内部构建的,但是我使用的是gradle构建选项 - 所以我不认为ItelliJ在运行测试时填充了类路径...)
我很确定当我第一次尝试构建时,我收到了一些关于无法解压缩libsqlite4java-osx ZIP文件的消息,(这并不奇怪,因为maven central说它是一个dylib文件)。
我需要做些什么才能让 gradle 做正确的事情?
ASIDE:我能够通过手动将maven缓存中下载的代码复制到我的某个地方(认为我在Mac上使用过)来运行代码。但这似乎与将所有设置和依赖项打包在文件中的全部意义背道而驰,并且不会让我以后轻松分发任何内容。.dylib
java.library.path
$HOME/Library/Java/Extensions
.gradle