Java编译错误:

侯赛因·谢哈迪(Hussein Shehady)

我正在与Deitel java的ATM案例研究一起编写第9版程序。

案例研究位于第546页的第13章(如果有人拿着书并想检查),我确定我的代码是书中所建议的100%。

我已经设置了所有代码,但是当我尝试运行程序时,它给了我这个:

Error: Could not find or load main class come.example.atm.AtmRun

当我尝试从类路径中使用终端来编译类时,它给了我这个错误:

localhost:atm user$ javac AtmRun.java
AtmRun.java:5: error: cannot find symbol
        Atm theATM = new Atm();
        ^
  symbol:   class Atm
  location: class AtmRun
AtmRun.java:5: error: cannot find symbol
        Atm theATM = new Atm();
                         ^
  symbol:   class Atm
  location: class AtmRun
2 errors

这是课程正在运行:直截了当,但我似乎找不到问题。有什么帮助吗?

package come.example.atm;
public class AtmRun {

    public static void main (String[] args){
        Atm theATM = new Atm();
        theATM.run();
    }
}

更新:当我使用命令java AtmRun从项目的bin目录中运行.class文件时,我得到以下信息:

Exception in thread "main" java.lang.NoClassDefFoundError: AtmRun (wrong name: come/example/atm/AtmRun)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

Atm类具有构造函数Atm()和public void run()以及其他方法,该类很大,所以我认为如果我不发布它的代码会更好,但是可以的话可以在书中检查。

注意:我正在使用eclipse,其他项目和类可以正常运行。

腹肌

对我来说,它奏效了。请按照以下步骤操作:

Y:\HashmiAb\Desktop\Trash\test>javac come\example\atm\Atm.java

Y:\HashmiAb\Desktop\Trash\test>javac come\example\atm\AtmRun.java

Y:\HashmiAb\Desktop\Trash\test>java come.example.atm.AtmRun
Heloo

如何使用javac和java命令的-d和-cp选项很重要。我没有使用任何这些选项。

要获得更多帮助,请找到目录结构。

+test
-+come
 -+example
  -+atm
   -AtmRun.java
   -Atm.java

谢谢。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章