关键词:
异常
在 DOS 窗口执行 javac
命令编译 .java
文件报错:编码GBK的不可映射字符
。
其中 Test.java
文件的内容如下:
public class Test
public static void main(String[] args)
// 测试类
System.out.println("hello world");
原因
.java
文件中含有中文字符。而该 Test.java
文件的文件编码是 UTF-8。
而 DOS 窗口的编码格式是 GBK,未指定正确的编码进行编译,所以报错。
解决
使用 javac
命令的 -encoding
选项指定文件编码格式。即:
javac -encoding UTF-8 文件名.java
关于 javac
命令的一些选项说明如下:
D:\temp>javac -help
用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:lines,vars,source 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
-proc:none,only 控制是否执行注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
-processorpath <路径> 指定查找注释处理程序的位置
-parameters 生成元数据以用于方法参数的反射
-d <目录> 指定放置生成的类文件的位置
-s <目录> 指定放置生成的源文件的位置
-h <目录> 指定放置生成的本机标头文件的位置
-implicit:none,class 指定是否为隐式引用文件生成类文件
-encoding <编码> 指定源文件使用的字符编码
-source <发行版> 提供与指定发行版的源兼容性
-target <发行版> 生成特定 VM 版本的类文件
-profile <配置文件> 请确保使用的 API 在指定的配置文件中可用
-version 版本信息
-help 输出标准选项的提要
-A关键字[=值] 传递给注释处理程序的选项
-X 输出非标准选项的提要
-J<标记> 直接将 <标记> 传递给运行时系统
-Werror 出现警告时终止编译
@<文件名> 从文件读取选项和文件名
错误记录记录android命令行执行java程序中出现的错误(dx打包pc可执行文件报错|dalvik命令执行kotlin编译的dex文件报错)(代码片段)
文章目录前言一、Android命令行与PC可执行JAR文件不兼容二、Android命令行使用dalvik命令不能直接执行Kotlin编译的dex文件前言尝试在Android系统中执行Java程序,【开发环境】Android命令行中执行Java程序(IntelliJIDEA中创建Java/Kotlin工程|dx打... 查看详情
如何用javac和java编译运行整个java工程
...如D盘)2、进入控制台(window+R键---->输入cmd)3、键入命令D: 回车4、进入D盘之后键入命令:javacDemo.java(要保证你的jdk是安装好的)5、如果没报错,即编译完成,可执行,键入命令:javaDemo(回车)以上完成整个在控制台运行java... 查看详情
java基础知识起步
...名为.java文件----打开cmd---进入文件所在文件路径如f:----在命令窗口执行javac文件名.java--执行命令:java文件名 包名小写,类名首字母大写,类名可.java文件名要完全一致,是 注意不是/用javac文件.java命令编译,后用java 类... 查看详情
java基础2----第一个程序helloworld(代码片段)
文章目录引言创建文件编写代码运行程序在命令行运行程序在IDE中运行程序程序解读总结引言几乎所有的编程语言都是从helloworld开始的。本次java的学习也是不例外的。这篇文章将展示helloword实现中java都做了什么工作创建文件所... 查看详情
java中布尔类型的运用,flag的问题
...别代表布尔逻辑中的“真”和“假”。2、输出boolean值到命令行窗口,在D盘Java目录下,新建“BooleanSample.java”文件。用记事本打开“BooleanSample.java”文件,输入以下代码。3、输出boolean值到命令行窗口,用记事本打开D盘Java目录... 查看详情
java命令行从编译到打jar包到执行
整个过程模拟Eclipse的JavaProject项目,包括src,以及生成的.class文件在bin中,还可能有lib,包含额外的jar包。一.javac编译1.没有额外的jar包1)准备工作我们新建JavaProject,该项目结构如下:bin:必须新建一个空的bin文件,用于... 查看详情
包(package)
...立文件夹。类名的全称是:包名.类名 javac xx.java命令编译的时候,不会建立对应的文件夹,建立包对应的文件夹的命令,要用javac-d.xx.java 会在当前路径下建立对应的文件夹 .是指命令行窗口的当前路径也可以javac-d... 查看详情
java命令功能
...译成字节代码的class文件。javac可以隐式编译一些没有在命令行中提及的源文件。用-verbose选项可跟踪自动编译。 javap是Javaclass文件分解器,可以反编译,也可以查看java编译器生成的字节码。用于分解class文件。-help帮助-l输出 查看详情
我在linux下装jdk包后,配置了变量,测试javactest.java命令不报错也不输出,怎么回事
javac是编译命令,是将java文件编译成class文件的过程,在编译始末,如果没有异常是没有任何输出的。所以,楼主遇到这种情况不用慌,看看你的test.java同目录下有没有test.class参考技术A在Linux系统里,没有提示就是好的事情,说... 查看详情
命令行执行class文件的路径和包问题(代码片段)
...实际开发过程中,我们都是使用集成开发工具,很少使用命令行去执行java程序。今天在看书时,编写了书上的例子,照着书上使用命令行来执行(书上可能是为了简便),发现报错说找不到类文件,可是仔细检查类文件路径发... 查看详情
命令行中编译执行报错提示“找不到或无法加载主类”
1、没有配置JAVA_HOME和CLASSPATH,只配了Path(D:ProgramJavajdk1.8.0_161in),验证可以编译执行; 2、java源文件路径:F:workspace0408HelloWorldsrc; 3、源文件如下:1packagetest;23publicclassHelloWorld{4publicstaticvoidmain(String 查看详情
java中设置classpathpathjava_home的作用?
...器等会在这些目录下寻找对应的.class文件2、path时用来找命令行执行文件的,操作系统或者其他软件会在这些目录下找对应的命令行执行文件3、JAVA_HOME是用来找JDK的 .PATH环境变量。作用是指定命令搜索路径,在命令行下面执... 查看详情
在c语言编译器目录下执行如下命令
bgiobjegavga,bgiobj命令将驱动程序egavga.bgi转换成egavga.obj的目标文件。这句话到底是什么意思啊?到底如何执行这个命令啊?还有,我在命令指示符中使用javac命令的时候,显示:error:cannotread****.java,这是为什么啊?到底javac命令... 查看详情
eclipse运行弹出ajavaexceptionhasoccurred.并报错exceptioninthread的解决方案
...的JVM上运行而产生的错误。1、解决措施就是保证jvm(java命令)和jdk(javac命令)版本一致。如果是linux版本,则在命令行中分别输入java-version和javac-version命令来查看版本是否一致。我用的是1.7.0_80。 2、版本一致却还是还是... 查看详情
java编译解释
...程序、包管理程序等。1、编译程序:javac.exe,对应的javac命令将Java源程序转换为字节码。javac[-选项]file.javafile.java:要编译的源文件[-选项]:可选项,javac中编译选项可以通过在命令提示符下输入javac或者javac-help查看。无任何可... 查看详情
请详细写出javac和java两个命令的使用方式
javaac和java两个命令的使用详解:一、javac命令javac用于编译Java文件,格式为:java[options][sourcefiles][@files]其中:options:命令行选项;sourcefiles:一个或多个要编译的源文件;@files:一个或多个对源文件进行列表的文件,有时候要... 查看详情
java环境变量配置原理解析
1.PATH环境变量。作用是指定命令搜索路径,在命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包... 查看详情
java在命令行中编译和运行java
...们把代码部署到Linux服务器上的时候,我们经常需要通过命令行编译和运行Java文件,网上关于这个的方法大多是通过javac-cpfilePath/jarName.jar javaName.java这种方法。但是加入在f 查看详情