我不能在eclipse中运行这个程序,但它适用于JGRASP

时间:2013-08-16 19:58:13

标签: java eclipse command-line

我有以下代码创建一个抽象类,具体类扩展抽象类和main方法。没有错误,因为它在JGRASP中编译并运行良好。当我在eclipse中运行时,它只是没有运行,但没有产生错误。我将文件命名为Product.java。

以下是代码:

abstract class Product {
    int value;

    public Product(int val) {
        value = val;
    }

    abstract public int multiply(int n);
}

class TimesTwo extends Product {
    public TimesTwo(int val) {
        super(val);
    }

    @Override
    public int multiply(int n) {
        return value * n;
    }

    public static void main(String[] args) {
        TimesTwo two = new TimesTwo(5);
        System.out.println(two.multiply(5));
    }

}

我也尝试在命令行上运行:

javac Product.java

我得到Product.classTimesTwo.class

当我跑的时候 Java TimesTwo.classJava Product.class

我得到Exception in thread "main" java.lang.NoClassDefFoundError:

2 个答案:

答案 0 :(得分:3)

TimesTwo.java中运行之前,请确保Eclipse作为单独的Java源文件存在。

答案 1 :(得分:0)

您应该将TimesTwo更改为public class并尝试运行如下命令:

java TimesTwo

运行类

时,结尾没有.class