【问题标题】:Exception in thread "main" java.lang.NoClassDefFoundError: calculator (wrong name: apackage/calculator)线程“主”java.lang.NoClassDefFoundError 中的异常:计算器(错误名称:apackage/calculator)
【发布时间】:2014-09-28 02:49:13
【问题描述】:

我正在尝试从命令提示符运行我的 Java 类文件,当我尝试这样做时收到此错误

C:\Users\New User\workspace\myproject\bin\apackage>java calculator -cp .
Exception in thread "main" java.lang.NoClassDefFoundError: calculator (wrong nam
e: apackage/calculator)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source) 

我尝试了许多不同的方法(设置类路径和路径),但我无法解决这个问题,任何帮助将不胜感激 C:

【问题讨论】:

标签: java command prompt


【解决方案1】:

编译源代码 (calculator.java) 后,执行以下操作:

在你的命令外壳中转到目录C:\Users\New User\workspace\myproject\bin

C:\Users\New User\workspace\myproject\bin>java -cp . apackage.calculator

作为apackage 中的类,您需要从包结构的根目录运行它 - 即bin

编辑:是的,您需要在类名之前提供-cp 开关。参考java命令帮助(http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html)

【讨论】:

  • 谢谢,解决了:D
【解决方案2】:

Java 中的 NoClassDefFoundError 出现在 Java 虚拟机无法在运行时找到在编译期间可用的特定类时。

请检查计算器类文件是否可用。

【讨论】:

    【解决方案3】:

    如果我理解你的意思,那么你的班级是apackage.calculator,你现在在这里

    C:\Users\New User\workspace\myproject\bin\apackage>
    

    然后

    C:\Users\New User\workspace\myproject\bin\apackage> cd ..\
    ... \bin> java -cp . apackage.calculator
    

    【讨论】:

    • 我试过了,但我收到:“错误:无法找到或加载主类计算器”
    • @user3910313 已编辑。我遇到了复制粘贴问题。
    猜你喜欢
    • 2013-01-09
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 2011-09-14
    • 2014-11-06
    • 2012-11-18
    • 1970-01-01
    相关资源
    最近更新 更多