Java 包装不';在Netbeans中不存在,在cmd中成功编译,为什么?
我需要使用系统网络摄像头拍摄照片。为此,我使用了Java 包装不';在Netbeans中不存在,在cmd中成功编译,为什么?,java,netbeans,packaging,webcam-capture,Java,Netbeans,Packaging,Webcam Capture,我需要使用系统网络摄像头拍摄照片。为此,我使用了网络摄像头捕获库。它包含三个jar文件。我想把包括依赖项jar在内的所有东西都打包到一个jar应用程序中 因此,我对依赖jar文件进行了分类,将其解包并放在netbeans项目的src文件夹中。 所以,我提取了它们。其中两个以相同的包名org开始,所以我提取并合并了它们。重要的第三个包以compackage开头。我已经将这三个目录放在我的netbeans项目的src文件夹中 现在的问题是,netbeans,说这个包不存在。但是,从windows中的
网络摄像头捕获库
。它包含三个jar文件。我想把包括依赖项jar在内的所有东西都打包到一个jar
应用程序中
因此,我对依赖jar文件进行了分类,将其解包并放在netbeans项目的src
文件夹中。
所以,我提取了它们。其中两个以相同的包名org
开始,所以我提取并合并了它们。重要的第三个包以com
package开头。我已经将这三个目录放在我的netbeans
项目的src
文件夹中
现在的问题是,netbeans
,说这个包不存在。但是,从windows中的命令行编译时,相同的项目。它编译并成功运行,一切正常
但是,当我将有问题的库作为jar添加到项目中时,它工作得很好,只是将它提取并放置在src
文件夹中,导致了问题
为什么会发生此错误?为什么仅在netbeans
中,如何解决此问题
我的代码:
package screen;
import com.github.sarxos.webcam.*; **//Error here**
import com.github.sarxos.webcam.log.*; **// Error here**
import java.io.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class Util extends TimerTask{
private String filePath;
private String type;
private Timer timer;
private Webcam webcam;
public Util(String path,String type){
this.timer=new Timer("Capture Timer");
this.filePath=path;
this.type=type;
this.webcam=Webcam.getDefault();
}
public void capture() throws IOException{
if(webcam!=null){
webcam.open();
BufferedImage image=webcam.getImage();
Date date=new Date();
ImageIO.write(image,type,new File(filePath+"_"+date.toString().replace(' ','_').replace(':','-')+"."+type.toLowerCase()));
webcam.close();
}
else{
webcam=Webcam.getDefault();
}
}
public void startCapturing(int period){
this.timer.schedule(this,0,period);
}
public void stopCapturing(){
timer.cancel();
}
public void run(){
try{
capture();
System.out.println("Doing");
}catch(Exception e){
e.printStackTrace();
}
}
public static void main(String args[]){
Util u=new Util("n082430_","PNG");
u.startCapturing(60000);
}
}
您需要为源代码编译时所依赖的所有第三方库提供类路径it@MadProgrammer我将所有库包都放在src文件夹中,我希望我不需要给出显式路径…它在命令行javac中编译得很好。我在这里遗漏了什么吗?这些是库的源文件还是类文件还是jar文件?@MadProgrammer包是从jar文件中提取的,包中包含类文件……,当我将com
包放在src目录的另一个目录中时,它没有显示错误。但是,当创建jar文件时,它会显示……为了避免这种情况,我需要将com
的两个副本放在目录中,一个放在src中……听起来真的。。。。奇怪的你不应该把类文件和源文件混在一起。java编译器可能没有直接使用源代码查找类文件。相反,您应该将JAR指定为javac类路径的一部分