Как настроить opencv в Eclipse для разработчиков Java с помощью плагина CDT? - PullRequest
11 голосов
/ 15 мая 2019

Я делаю программу CBIR на Java.

Для фактической обработки изображений я использую файл C ++ (с его заголовком), который мы получили по курсу, который я проходил на моей степени CS в университете.

Я использовал JNI для подключения файлов Java к файлам C ++, следуя этому руководству .

Я пытался найти руководство по настройке OpenCV в "Eclipse для разработчиков Java с плагином CDT", но не смог найти.

В этом уроке: https://docs.opencv.org/2.4.13.4/doc/tutorials/introduction/linux_eclipse/linux_eclipse.html

на шаге 8 мне нужно перейти на вкладку «Настройки инструмента» в Eclipse, но у меня ее нет.

В этом руководстве говорится, что нужно открыть проект C ++, но мне нужен проект Java (потому что большинство моих файлов находятся на Java).

Когда я создаю проект C ++, я вижу вкладку «Настройки инструмента».

Но я уже преобразовал свой проект в проект C ++ как часть этого руководства по JNI, поэтому я подумал, что это то же самое, что и создание нового проекта C ++.

Инструкции по преобразованию в проект C ++ находились на шаге 2 в этом руководстве:

Шаг 2. Преобразование проекта Java в проект C / C ++ Makefile Щелкните правой кнопкой мыши по проекту Java "HelloJNI" ⇒ Новое ⇒ Другое ... ⇒ Преобразовать в> C / C ++ проект (добавляет C / C ++ Nature) ⇒ Далее.

Появится диалоговое окно «Преобразовать в проект C / C ++». В «Типе проекта» выберите> «Проект Makefile» ⇒ В «Наборах инструментов» выберите «MinGW GCC» ⇒ Готово.

Теперь вы можете запускать этот проект как на Java, так и на C / C ++.

Любой указатель, как решить эту проблему?

1 Ответ

3 голосов
/ 17 мая 2019

Вам нужно два проекта, один C ++, один Java.

Учебное пособие по JNI демонстрирует, как вызывать C ++ из java посредством генерации необходимых заголовков C ++ с помощью инструмента javac / javah. В этом примере они были сделаны с использованием части Java, поэтому они преобразовали ее в проект C ++.

Следуйте инструкциям в https://docs.opencv.org/2.4.13.4/doc/tutorials/introduction/linux_eclipse/linux_eclipse.html для настройки нового проекта C ++ с opencv и независимо создайте новый проект Java для вашего исходного кода Java. Когда вы используете javac для генерации заголовков, вместо указания "." путь в командной строке, укажите путь к вашему проекту C ++.

Вам необходимо убедиться, что вызов Java System.loadLibrary ("YourC ++ LibraryName") может найти общую библиотеку, созданную проектом C ++ (и что проект C ++ создает общую библиотеку).

...