使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析

今天在终端尝试使用java命令编译class文件时出现了“找不到或无法加载主类”的问题

image

原因是包名的影响:

package chapter19;

import java.io.File;
import java.io.FilenameFilter;
import java.util.regex.Pattern;

public class DirList {
    public static void main(String[] args) {
        File path = new File(".");
        String[] list;
        list = path.list(new DirFilter(args[0]));

        for(String dirIterm: list){
            System.out.println(dirIterm);
        }
    }
}

class DirFilter implements FilenameFilter {
    private Pattern pattern;

    public DirFilter(String regex) {
        this.pattern = Pattern.compile(regex);
    }

    @Override
    public boolean accept(File dir, String name) {
        return pattern.matcher(name).matches();
    }
}

应该在最外层包所在的上层目录使用java 类的全名,也即java 包名+类名的方式 执行命令


image.png

详细解析可参考使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析 - 大C - 博客园

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容