• Intellij Idea编译项目下的.java文件时的编码问题


    由《编译.java文件时的编码问题》可知,在编译.java文件的时候,需要正确指定一个编码方案,该编码方案用于解码.java文件的字节流。
    那么在使用Intellij Idea编译(假定使用javac编译工具)项目下所有的.java文件时,该如何指定正确的编码方案呢?
    1)首先,我们需要知道当执行"Build"菜单下的"Make Project"命令,编译整个项目下的.java文件的时候,Intellij Idea执行的具体命令。我们可以通过以下方式获得,执行"Build"菜单下的"Generate Ant Build"命令,生成一个Ant Build File,然后通过这个Ant Build File,我们就可以得到Intellij Idea在编译整个项目的时候执行的具体命令。[1]

    2)借助于1)中的Ant Build File,可以发现Intellij Idea在编译项目下的.java文件时,执行的具体命令是“带有各种参数的javac命令”。其中有一个"-encoding"参数,该参数就是用来指定编译.java文件时应该使用的编码方案的,如图1所示。Intellij Idea自身有一套机制,用来确定该参数的值,经过测试,该值有可能来自"Project Encoding"的配置,见图2;有可能来自某个.java文件被Intellij Idea检测到的使用的编码方案,见链接;也有可能来自图3中所示的编译器参数配置等等。具体的机制需要查阅相关文档。

                                                                                                          图1

     

                                                                                                                                               图2

     

                                                                                                                                            图3

     

    3)由2)可得,Intellij Idea自身有一套确定"-encoding"参数值的机制,但是往往最后被确定的值不是我们想要的。而且"encoding"参数是非常重要的一个参数,为了更加准确地指定"-encoding"参数,我们可以在图3所示的编译器参数配置中明确配置"-encoding xxx"。

    参考文献:

    [1]http://stackoverflow.com/questions/2966530/can-i-see-the-exact-commands-intellij-uses-to-build-a-java-project
    ---------------------
    作者:AllInCode
    来源:CSDN
    原文:https://blog.csdn.net/dslztx/article/details/47010113/

  • 相关阅读:
    ios常见加密解密算法介绍与应用
    HTML 入门笔记 - 初识HTML
    大浪淘沙公司面试题
    每个Xcode开发者应该知道的七个使用技巧
    2016年最新苹果开发者账号注册申请最强详解!
    提交AppStore遇见iPad适配问题: Invalid Bundle. iPad Multitasking support requires these orientations
    ios开发之 APP上架要填写什么?有什么要注意?
    Windows比较好的网站
    Mac系统如何编辑hosts文件
    Jquery Offset, Document, Window 都是什么
  • 原文地址:https://www.cnblogs.com/xiaoshen666/p/11127840.html
Copyright © 2020-2023  润新知