Я скомпилировал OpenCV для Linux (Mint 19 Tara), использовал этот учебник: https://docs.opencv.org/2.4/doc/tutorials/introduction/desktop_java/java_dev_intro.html
Потом попробовал вот такую библиотеку: https://docs.opencv.org/3.4/d1/d0a/tutorial_java_eclipse.html
Но при импорте я получаю сообщение об ошибке: «Не удается разрешить организацию импорта».
Что я могу сделать не так? Вот код, который я использовал:
package com.thegergo02.facedetection;
import org.opencv.core.Core;
import org.opencv.core.CvType;
import org.opencv.core.Mat;
public class Hello
{
public static void main( String[] args )
{
System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
Mat mat = Mat.eye( 3, 3, CvType.CV_8UC1 );
System.out.println( "mat = " + mat.dump() );
}
}
Снимок экрана проводника пакетов
Компиляция прошла успешно, ошибок нет, у меня были Java, Ant, все.
Версия Java: jdk-11.0.1 Версия Ant: 1.10.3
Но я сделал все, что сказано в руководстве (ах). Что я могу сделать, чтобы решить проблему?
Где мне нужно было поставить эту строчку? Потому что это уже в основной функции.
Вы запускали make install, чтобы получить своего рода SDK в папке <build> / install? Вы пробовали «Исправить свойства проекта» для проекта библиотеки OpenCV?
Где найти "Исправить свойства проекта"? Я пытаюсь перекомпилировать его с помощью этой команды.
Перекомпиляция не сработала, я все еще не могу найти эту кнопку. (На этот раз перекомпиляция была очень быстрой, это проблема?)
Не могли бы вы проверить свой Project-> Build path-> вашу библиотеку, если там присутствует open cv, если нет, то добавьте внешние jar-файлы и выберите open cv




В пакете по умолчанию удалить файл module-info.java.
Учебник основан на Java 6 без учета Система модулей платформы Java (JPMS), который можно (но не обязательно) использовать, начиная с Java 9.
При использовании JPMS зависимость от модуля OpenCV должна быть явно определена в файле module-info.java, чтобы сделать его доступным.
ЭТО СРАБОТАЛО! Спасибо, я не могу поверить, что это решение проблемы, которую я не смог решить за 1 день.
Поскольку сама ошибка говорит, что организация библиотеки пакетов не может быть разрешена, это означает, что она не установлена должным образом. попробуйте использовать
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);