java编译相关问题总结
2016-11-09 15:23
190 查看
参考:http://jingyan.baidu.com/article/5bbb5a1b080f6113eba179f0.html
windows的java文件格式为ANSI(GBK)
所以linux里编辑的文件.java里含有中文时(即使在注释里),拿到windows里编译便会出错,提示“错误:编码GBK的不可映射字符”。将.java文件转换成windows默认识别的ANSI格式,问题立马解决,可以编译通过。
windows里编辑的.java文件拿到linux下编译会出现同样问题。
然而,大工程不可能对上千个文件逐个转码,因此必须找到解决办法。
解决办法便是:
无论是windows还是Linux,都是用以下办法: 在编译时添加参数-encoding gbk即可解决。-encoding 后边的参数是指 .java文件的编码格式
如果Hello.java是windows编辑的,则格式是ANSI,拿到linux里编译需指定 -encoding GBK(小写也可以)格式
javac -d . -encoding gbk Hello.java
如果Hello.java是linux编辑的,则格式是UTF-8,拿到windows里编译需指定 -encoding UTF-8(小写也可以)格式
javac -d . -encoding UTF-8 Hello.java
1、在linux下生成的class文件/jar包,拿到windows下可以直接使用,无需重新编译。
2、Linux文件拿到windows下编译时提示错误 “编码GBK的不可映射字符” 的解决办法。
linux的java文件格式为UTF-8windows的java文件格式为ANSI(GBK)
所以linux里编辑的文件.java里含有中文时(即使在注释里),拿到windows里编译便会出错,提示“错误:编码GBK的不可映射字符”。将.java文件转换成windows默认识别的ANSI格式,问题立马解决,可以编译通过。
windows里编辑的.java文件拿到linux下编译会出现同样问题。
然而,大工程不可能对上千个文件逐个转码,因此必须找到解决办法。
解决办法便是:
无论是windows还是Linux,都是用以下办法: 在编译时添加参数-encoding gbk即可解决。-encoding 后边的参数是指 .java文件的编码格式
如果Hello.java是windows编辑的,则格式是ANSI,拿到linux里编译需指定 -encoding GBK(小写也可以)格式
javac -d . -encoding gbk Hello.java
如果Hello.java是linux编辑的,则格式是UTF-8,拿到windows里编译需指定 -encoding UTF-8(小写也可以)格式
javac -d . -encoding UTF-8 Hello.java
相关文章推荐
- java编译的莫名奇妙问题总结
- Java读取properties文件及相关问题总结
- Myeclipse学习总结(14)——Eclipse/MyEclipse中Java编译时Java反射机形参没有保留问题2种解决方案
- Java 使用EE配置相关问题总结
- 字符数字及在编译时会出现的相关问题总结
- Eclipse 的相关问题 只能编译Java 或 C、C++
- -Java连接Excel、MySQL、SQLServer数据源及相关增、删、改、查方法和问题总结-【Part II】
- java编译的莫名奇妙问题总结
- Java基础学习总结(116)——Map使用相关问题总结
- java编译问题总结
- java编译的莫名奇妙问题总结
- java相关问题总结
- -Java连接Excel、MySQL、SQLServer数据源及相关增、删、改、查方法和问题总结-【Part I】
- Java基础学习总结——Map使用相关问题总结
- JNI Java调用so包相关问题总结
- java在SAE中使用的相关问题总结
- DICOM:dcm4chee开源框架编译相关问题总结
- java编译的莫名奇妙问题总结 .
- MY 总结:Java 内存分配,栈、堆。。。及相关问题解决
- -Java连接Excel、MySQL、SQLServer数据源及相关增、删、改、查方法和问题总结-【Part III】