如何使用gradle在Java项目中添加本机依赖关系



我正在使用openCV进行项目。我成功地为MacOS平台创建了所需的JAR和本机Libs。我现在想在我的Java项目中使用它。我正在使用Gradle进行构建和依赖管理。我在项目的lib文件夹中添加了罐子和本机依赖。

build.gradle

group 'com.udaykale'
version '1.0-SNAPSHOT'
apply plugin: 'java'
sourceCompatibility = 1.8
repositories {
    mavenCentral()
}
dependencies {
    compile(
            files('lib/opencv-320.jar')
    )
    testCompile group: 'junit', name: 'junit', version: '4.11'
}
System.setProperty("java.library.path", "lib")

我收到以下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no opencv_java320 in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1122)
    at com.udaykale.imageeditor.Main.<clinit>(Main.java:13)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)

我知道我在运行时看不到本地库。如何更改我的gradle配置来处理此操作?

本地安装opencv-320.jar文件,用maven将其用作build.gradle.gradle.gradle.local的依赖项。相应地指定版本,组ID和工件ID。

mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> 
-DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=jar

还将本地存储库添加到build.gradle

repositories {
 mavenLocal()
}

,然后依赖性

dependencies {
 compile "<group-id>:<artifact-id>:<version>"
}

最新更新