Я работаю над проектом, используя opencv. Я успешно создал необходимые jar и собственные libs для платформы macOS. Теперь я хочу использовать это в своем проекте java. Я использую gradle для управления построением и зависимостями. Я добавил jar и родную зависимость в папке lib моего проекта.Как добавить собственные зависимости в проект java с помощью gradle
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, чтобы справиться с этим?
Еще та же ошибка. Его невозможно найти родную зависимость. – uday
Правильно ли он компилируется? А также, вы использовали код конкретной ОС Mac в своей библиотеке? Если да, ваш код зависит от платформы –
Это альтернативное решение такое же, как и вытаскивание из локального файла, за исключением использования 'mavenLocal()' – chenrui