您的位置:首页 > 编程语言 > Java开发

命令行中编译与运行带有包的java文件

2011-10-10 22:15 260 查看
被一个小问题折腾了很久:一个很简单的java文件,在MyEclipse中可以运行,在命令行里不行,总是提示NoClassDefFoundError

文件内容:
package afanti;
public class MainMethod {
public static void main(String[] args) {
System.out.println("This is main method");
}
}

要点在package上,本质是classpath设置问题

命令行里用javac到文件所在文件夹编译没有问题,classpath用于java运行时寻找编译出来的class文件。
需要将classpath设置到包所在位置,即afanti的上层目录,然后执行
java afanti.MainMethod

附:
三种设置classpath方法
1.用环境变量设置,永久生效
2.用set classpath=XXX设置,临时生效
3.用java -cp XXX MainMethod设置,临时生效,且优先级比前两种高

本文出自 “何必呢” 博客,请务必保留此出处http://afantihust.blog.51cto.com/2231549/684608
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: