Я использовал JMF / Webcam Frame Grabber Demo для создания настольного Java-приложения в NetBeans 7.0.1 EE, которое захватывает кадр с моей веб-камеры.Приложение работает нормально, если я запускаю его из NetBeans (щелкните правой кнопкой мыши по проекту и запустите), но если я запускаю файл .jar, сгенерированный Netbeans из командной строки, оно не обнаруживает мое устройство.
CaptureDeviceInfo device = CaptureDeviceManager.getDevice(cameraDevice);
устройство имеет значение null.
Результат тот же, если я удаляю jmf.jar из библиотеки проекта и запускаю его оттуда.Выдает это исключение:
Exception in thread "Thread-4" java.lang.NullPointerException
at desktopapplication6.DesktopApplication6View$MyNetworkThread.run(DesktopApplication6View.java:248)
Netbeans создает папку dist и dist \ lib со всеми необходимыми jar-файлами lib.В jar приложений Manifest.mf выглядит следующим образом
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.2
Created-By: 1.6.0_27-b07 (Sun Microsystems Inc.)
Class-Path: lib/appframework-1.0.3.jar lib/swing-worker-1.1.jar lib/jm
f.jar
Main-Class: desktopapplication6.DesktopApplication6
Я пытался создать свой собственный jar с изменениями в манифесте, но безуспешно.
Я использую Win 7 64bit, JDK32bit v.1.6.0_27.(NetBeans использует тот же JDK), после этого устанавливается JMF (v.2.1.1e).
Classpath = %JMFHOME%\lib\jmf.jar;%JMFHOME%\lib\sound.jar;%JMFHOME%\lib
Path = %JMFHOME%\lib
JMFHOME = C:\Program Files (x86)\JMF2.1.1e
JMFRegistry обнаруживает мое устройство (vfw: Microsoft WDM Image Capture (Win32): 0).Итак, кто-нибудь знает, как сделать этот файл JAR, который работает и распознает мое устройство?