运行java程序时ClassNotFoundError

时间:2015-07-27 18:28:13

标签: java

我正在使用.sh文件运行程序。 .java文件具有main()方法,在其中我有一个从其他.java文件类实例化的对象。它编译成功,但当它归结为执行文件时,它显示`

  

ClassNotFoundException的

in the的main()method for the first object creation, even though there was a .class file created for FetchData`。

package scheduledExecutor;

public class Executor
{
    public static void main()
    {
        ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
        FetchData task= new FetchData(); -- show error here for ClassNotFound
        executor.scheduleAtFixedRate(task, 1, 310, TimeUnit.SECONDS);
    }
}

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

尝试将FetchData类位置放在文件路径中,看看它是否有效

答案 1 :(得分:0)

在编译时,如果编译器的路径包含类但JVM的ClassPath不包含目标类,则会在执行时获得ClassNotFoundException。

运行程序时,请确保包含FetchData类文件的文件夹或jar位于JVM的ClassPath中。查看编译器的Classpath与JVM使用的类路径之间的区别。