首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >(Java)找不到主类

(Java)找不到主类
EN

Stack Overflow用户
提问于 2012-07-20 06:35:42
回答 3查看 1.6K关注 0票数 0

我的代码是在OSX上编译的,运行良好(编译器版本1.6)。但当我把它复制到一个遥控器时。我不能运行它。

当我跑的时候

java TPCC.class

我遇到了这样的异常。(顺便说一下,TPCC.class是默认包)

代码语言:javascript
运行
复制
Exception in thread "main" java.lang.NoClassDefFoundError: TPCC/class
Caused by: java.lang.ClassNotFoundException: TPCC.class
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: TPCC.class.  Program will exit.

以及我在ubuntu上的java版本:

代码语言:javascript
运行
复制
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) Client VM (build 17.0-b16, mixed mode, sharing)

它也是1.6,我认为它符合编译后的二进制文件。我怎样才能解决这个问题?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-07-20 07:05:08

问题在于你运行程序的方式。编译的java调用

ClassName.java

将是ClassName.class。你应该像这样运行它

"java ClassName“

。你不应该把它当作

"java ClassName.class“

这里发生的就是这个。当您以java ClassName.class的形式运行它时,JVM试图在名为" ClassName“的包中查找不存在的名为”ClassName“的ClassName。所以它会抛出NoClassDefFoundError。

票数 2
EN

Stack Overflow用户

发布于 2012-07-20 06:47:37

正如错误所示,这是一个调用问题:应该使用java,而不是类的文件名。错误消息试图通过声明"TPCC/class“没有找到来告诉您这一点。

(抱歉第一次添加注释,使用了错误的字段)

票数 0
EN

Stack Overflow用户

发布于 2012-07-20 06:53:33

在调用java时指定类路径:

代码语言:javascript
运行
复制
java -cp <path-to-jar> TPCC
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11574022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档