使用.jar文件中的类

时间:2014-02-11 20:57:40

标签: java file-io jar

我正在尝试使用FileUtils.class文件中的类commons-io-2.4.jar。代码如下: -

package Lynda.Essential_training;
import java.io.*;
//import Lynda.Essential_training.org.apache.commons.io.*;

public class fileHandlingCommons
{
    public static void main(String[] args) throws Exception
    {
        File f1 = new File("/home/kusur/java_programs/source.txt");
        File f2 = new File("target2.txt");

        FileUtils.copyFile(f1,f2);
    }
}

当我使用以下命令编译此程序时: -

javac -cp /usr/sys/java_programs/Lynda/Essential_training/Commons-io-2.4.jar Lynda/Essential_training/fileHandlingCommons.java

我收到以下错误: -

Lynda/Essential_training/fileHandlingCommons.java:12: error: cannot find symbol
        FileUtils.copyFile(f1,f2);
        ^
  symbol:   variable FileUtils
  location: class fileHandlingCommons

当我从.jar文件夹中提取所有文件然后编译程序时,我收到同样的错误(在这种情况下,使用程序中的注释import语句)。

你能帮忙吗?

2 个答案:

答案 0 :(得分:2)

看起来包含FileUtils的import语句已被注释掉(org.apache.commons.io.*)..取消注释,重新编译并重试:

package Lynda.Essential_training;
import java.io.*;
import org.apache.commons.io.*; //<-- the problem

public class fileHandlingCommons
{
    public static void main(String[] args) throws Exception
    {
        File f1 = new File("/home/kusur/java_programs/source.txt");
        File f2 = new File("target2.txt");

        FileUtils.copyFile(f1,f2);
    }
}

答案 1 :(得分:0)

看看你的代码我假设,FileUtils在你的代码中没有导入的某个包下。

你能导入那个特定的类并编译吗?