我使用JMF/Webcam Frame Grabber Demo在NetBeans 7.0.1EE中创建了java桌面应用程序,它可以从我的网络摄像头中抓取帧。如果我从NetBeans运行应用程序(右键单击项目并运行),应用程序工作正常,但是如果我从命令提示符运行Netbeans生成的.jar文件,它不会检测到我的设备。
CaptureDeviceInfo device = CaptureDeviceManager.getDevice(cameraDevice);设备为空。
如果我从项目库中删除jmf.jar并从那里运行它,结果是相同的。它抛出这个异常:
Exception in thread "Thread-4" java.lang.NullPointerException
at desktopapplication6.DesktopApplication6View$MyNetworkThread.run(DesktopApplication6View.java:248)Netbeans创建dist和dist\lib文件夹,其中包含所有必要的lib jar。在应用程序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,在清单中进行了更改,但没有成功。
我使用的是Win7 64位,JDK32位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.1eJMFRegistry检测我的设备(vfw:Microsoft WDM Image Capture (Win32):0)。那么,有谁知道如何制作这个jar文件并识别我的设备吗?
发布于 2011-09-07 02:42:32
jmf.properties文件需要与main方法所在的类位于同一文件夹中,或者与包含main方法的JAR归档文件位于相同的文件夹中。
https://stackoverflow.com/questions/7317487
复制相似问题