Я пытался разработать приложение с помощью Netbeans RCP, чтобы получать изображения с веб-камеры.
Просто и понятно, он работает в обычном Java-проекте.
Итак, в первую очередь должен быть установлен JMF (у меня Windows 7 64-битная, (32-битная JDK, которая необходима для JMF).
В обычном проекте Java у меня есть следующий код:
Vector webcams = CaptureDeviceManager.getDeviceList(null);
int length = webcams.size();
System.out.println("length: " +length);
Выход для этого «длина: 1» (1 веб-камера подключена)
Когда я делаю это в моем проекте платформы Netbeans, это выводится "length: 0".
Итак, в основном у меня есть пакет проектов Netbeans
2 модуля:
- JMF-библиотеки (модуль-обертка с jmf.jar)
- Модуль веб-камеры (содержит 1 Java-файл с указанным кодом)
Я добавил модуль библиотек JMF в модуль веб-камеры в качестве зависимости, но это не сработало.
Я также могу подтвердить, что classpath установлен:
Boot & Ext. Classpath = C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\resources.jar;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\rt.jar;
C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\sunrsasign.jar;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\jsse.jar;
C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\jce.jar;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\charsets.jar;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\modules\jdk.boot.jar;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\classes;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\ext\dnsns.jar;**C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\ext\jmf.ja**r;
C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\ext\localedata.jar;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\ext\sound.jar;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\ext\sunjce_provider.jar;
C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\ext\sunmscapi.jar;C:\Program Files (x86)\Java\jdk1.6.0_25\jre\lib\ext\sunpkcs11.jar
Я действительно застрял здесь. Что такого особенного в Netbeans RCP, что добавление jmf.jar в качестве модуля-обертки может нарушить этот код?
Если у кого-то есть советы, которые помогут получить больше отладочной информации для отслеживания проблемы, я очень благодарен.
EDIT:
После долгих проб и ошибок я нашел следующее решение:
Copy c:\Progra.... x86\JMF...\lib\* to c:\Program .. x86\jdk\lib\*
Including the jmf.properties file
Однако я рад, что это работает, после переноса приложения на другой клиентский ПК для использования там не будет этих библиотек.
Так что я действительно не знаю, как решить эту проблему с Netbeans RCP. Как трудно это может быть? Я добавил баночки в обертку и поместил файл .properties в папку / release / modules / ext.
Пожалуйста, помогите мне здесь:)