使用命令行方式编译java代码时主类无法加载的问题
2017-10-16 12:57
483 查看
早上在看IO部分的时候,根据java编程思想书上的例子写了一个小的demo,由于涉及到main函数args的参数输入问题,本人就用命令行的方去编译代码,可是在在执行java的命令的时候发生了主类无法加载的问题。上网百度了一波后发现网上的大多问题都是由于java的环境变量没有配置好的缘故.下面我把标准的java配置,粘贴如下:
- JAVA_HOME是 D:\Java\jdk1.8.0_11
- Path是 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
- CLASSPATH是 .;%JAVA_HOME%lib;%JAVA_HOME%lib\tools.jar
本人的代码
使用命令行后的结果如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202010/29/5b3633c6bd7db64d22a2c999adfa164c)
根据网络上的方法,原因都是java的环境变量没有配置好,尤其是CLASSPATH的变量配置,很多人都会不小心漏前面的“,;”,导致结果的出错。可是我在检查环境变量配置的时候是没有任何问题的。最后的原因是由于我的代码时直接从idea里面粘贴出来的,所以代码的第一行申明是包的声明,所以在加载的时候,才无法加载这个类。
去掉包的声明后运行的结果:
- JAVA_HOME是 D:\Java\jdk1.8.0_11
- Path是 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
- CLASSPATH是 .;%JAVA_HOME%lib;%JAVA_HOME%lib\tools.jar
本人的代码
package IOTest;//用命令行编译的时候去掉这一行就可以正常运行 import java.io.File; import java.io.FilenameFilter; import java.util.Arrays; import java.util.regex.Pattern; /** * All rights reserved. * Created by zhaideyin on 2017/10/16. * Description: */ public class DirList { public static void main(String[] args) { File mfile = new File("C:\\Users\\Administrator\\IdeaProjects\\untitled\\src\\com\\company"); String[] mfileList; if (args.length == 0) { mfileList = mfile.list(); } else { mfileList = mfile.list(new FilenameFilter() { private Pattern mpattern = Pattern.compile(args[0]); @Override public boolean accept(File dir, String name) { return mpattern.matcher(name).matches(); } }); } Arrays.sort(mfileList,String.CASE_INSENSITIVE_ORDER); for(String mitem:mfileList) { System.out.println(mitem); } } }
使用命令行后的结果如下:
根据网络上的方法,原因都是java的环境变量没有配置好,尤其是CLASSPATH的变量配置,很多人都会不小心漏前面的“,;”,导致结果的出错。可是我在检查环境变量配置的时候是没有任何问题的。最后的原因是由于我的代码时直接从idea里面粘贴出来的,所以代码的第一行申明是包的声明,所以在加载的时候,才无法加载这个类。
去掉包的声明后运行的结果:
相关文章推荐
- 在命令行界面使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析
- java命令行编译时提示找不到或无法加载主类的问题
- 关于命令行中javac 编译成功,用 java 运行 class 文件出现 “ 找不到或无法加载主类 ” 的问题
- javac 及 java命令的使用问题(错误或无法加载主类)
- 使用eclipse创建多文件java工程出现找不到或无法加载主类问题解决
- [置顶] 使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析
- javac编译成功,用java运行class文件出现“找不到或无法加载主类” 的问题
- javac编译成功,用java运行class文件出现“找不到或无法加载主类” 的问题
- 【转载】使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析
- 在命令行下编译通过,运行时提示错误:找不到或无法加载主类的原因分析与解决方式
- 使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析
- cmd命令行执行java程序的编译和执行的方法及可能出现找不到或无法加载主类的错误的解决
- Java中命令行可以编译成功,但不能运行,报找不到或无法加载主类
- 使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析
- eclipse中报 无法加载主类 问题 但在java命令能编译过
- 使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析
- javac编译成功,用java运行class文件出现“找不到或无法加载主类” 的问题解决起来很简单
- JAVA学习47_在Eclipse下,出现“找不到或无法加载主类 ”的问题的解决方式
- 使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析
- javac编译成功,用java运行class文件出现“找不到或无法加载主类” 的问题