zoukankan      html  css  js  c++  java
  • 【Java】编码GBK的不可映射字符 找不到符号 找不到或无法加载主类

    命令行运行 Java 程序时遇到了几个问题:

    1. javac 命令编译时报错:编码GBK的不可映射字符。
    2. javac 命令编译时报错:找不到符号。
    3. java 命令运行时报错:找不到或无法加载主类。

    我可以确认代码是没有问题的,Java 配置环境也是没有问题的。

    每个人出现问题的原因可能不同,下面是我出现这几个错误的原因以及解决方法,用以参考:

    编码GBK的不可映射字符

    解决方法:javac 命令后添加 -encoding UTF-8 。如下:

    javac -encoding UTF-8 文件名
    

    找不到符号

    错误原因: 程序有多个文件,并且在主程序中创建了其他类的实例,而编译时命令中只有主程序,导致编译器无法识别主程序中用到的其他类。

    解决方法: 同时编译所有 Java 源代码文件。如下:

    javac -encoding UTF-8 *.java
    

    命令含义是编译当前文件夹下所有后缀为 ".java" 的文件。

    找不到或无法加载主类

    错误原因: 通常 Java 文件第一行都是包名,编译没有问题,但如果在 Java 文件所在目录执行 java 命令运行程序,就会报这个错误。

    解决方法: 需要退至包所在的文件夹下运行。假设包所在文件夹是 dir,包名是 com,那么需要退至 dir 文件夹,执行如下命令:

    java com.主类名
    

    注意:需要写明完整的包结构。

  • 相关阅读:
    luogu1196 银河英雄传说 (并查集)
    [BZOJ2243][SDOI2011]染色
    [BZOJ1879] [Sdoi2009]Bill的挑战
    [Noip2003] 侦探推理
    [Noip2005] 篝火晚会
    [JZOJ100047] 【NOIP2017提高A组模拟7.14】基因变异
    [九省联考2018]一双木棋chess
    [Noip2009] 靶形数独
    [Luogu2737] [USACO4.1]麦香牛块Beef McNuggets
    [BZOJ3109] [cqoi2013]新数独
  • 原文地址:https://www.cnblogs.com/ME-WE/p/12494876.html
Copyright © 2011-2022 走看看