zoukankan      html  css  js  c++  java
  • intellj(idea) 编译项目时在warnings 页签框里 报 “xxx包不存在” 或 “找不到符号” 或 “未结束的字符串字面值” 或 “需要)” 或 “需要;”等错误提示

    如上图:

    环境 是 刚换的系统,重装的Intellj,直接双击老的皇帝项目中的idea的 .iml文件,结果 打开 intellj 后,进行 ctrl +shift +F9 编译时 尽然报 错误提示,提示内容 有:

    “xxx包不存在” 、“找不到符号”、“未结束的字符串字面值”、“需要;” 、“需要)” 等错误,可以我看了项目中右边根本就没有红X ,即项目中根本就没有报错误提示,只是下边的warnings页签框报一大推错误而已,不知道为啥这边报错,报错点对应代码右边为啥又没有红x提示错误?

    还有就是 我去看一下错误的代码,结果代码也没有什么错误。提示说找不到包的或者 类的,我都重新 引用了一遍 编译时还是报错,不知道什么情况? 不管是我重新编译 还是build项目 还是rebuild项目 还是compile module  还是  make module 都没用,还是报一大推上边的错误,无解了。

    结果 网上一搜 原来是编码的问题,解决如下:

    如下图只要  把三处 都指明utf-8即可,不要用 "default system encoding"。这个问题一般出现在刚装的intellj 或者 从 eclipse 导入的项目 还没开始 设置编码所致,都弄成utf-8 即可(如果还不行看本页最下边)。

    如果上边三处都改为utf-8了即 把idea 和项目 全局整体改为utf-8,但是 项目中极个别的类 文件 的编码还是特殊的有问题的,即虽然是全局上把项目默认改为utf-8,但已存在的项目中的一些类的java文件 可能还是其他的编码,那怎么办,那就是根据提示最上边的3张图中提示 哪个类报错就打开哪个类文件 然后 看idea最下边是什么编码,如图:

    上边的这个编码设置是当前 打开的这个java类文件的 编码,不是全局编码,所以 不仅仅要全局编码要对,这个单独的java文件编码也要对,假如 这边左击改为utf-8后还是不行的话,那可能就是idea 反应慢的问题,即去 项目根目录 下的 .idea 文件夹下找到 encodings.xml 文件,打开它,如图:

    里面有2个类,一个 是DebugGameServer.java 和 ManageHandler.java  这2个类 刚好就是 最上边 3张图中 报错的2个类文件,这里一看 现在 第一个DebugGameServer.java 仍然是gbk编码,而第二个类已经是utf-8了(刚被我改了),现在还有一个类为gbk,所以仍然还是报错,那项目切换到DebugGameServer.java 这个类,然后把最下边改为utf-8即可,如果 改了还不行,那还去上边那个encodings.xml 文件 文件中看 还有哪个编码是错误的java类文件,找到一个改一个,直到改好为止。

    注:有的是时候可能多个类文件的编码有问题,但是后台在启动时只会包几个别类错误,而不是全部在 encodings.xml 文件 中显示出所有编码有问题的类,不管,打开encodings.xml 文件看一个改好后再启动项目,报错的话再回来encodings.xml 文件 中看还有哪些新显示出的有问题的类文件,再依次修改下去。

    注:有时候报错的话如果不知道是什么错误,其实 在 警告框中已经给出了答案,如:

    注:类文件编码错误可直接在idea最下边看到当前类文件是什么编码:

    注:有的时候改了类文件的编码后encodings.xml 文件中也都会了后,可是还不行,那可能是idea切换有问题,可以先再改为错误的编码然后再改回正确的编码,让idea 有一个重新编码的操作即可。

     @ 孙雅薇 那 刚 从svn down的项目,是 eclipse 的环境下的项目,结果用intellj 载入项目 后 出错,显示 包一个sun.com.xxx  一个错误,结果我点这个报错的类 是可以找到 jar包的,那也是上边的问题,我开始按照上边改编码 ,结果编码改完 那个类 还是红色,没法 启动,结果我是 把 报错的类 都改成 gbk(intellj右下角直接改为gbk),结果就不报错了,就可以 启动服了。然后开始起服,结果报乱七八招的错误,先 把 ccs 那 ip 有问题,我给直接注释掉了;然后又 报 KeyValueDictCache 中 ips 设置有问题,都是报格式错误,结果我断点明明都是数字结果 在判断数字 那反而还是报错,结果我想想估计 是tm的 编码问题,结果我把 原来红色类的编码 由 gbk 再改回utf-8,类也不会报错了,这边 启动服,也不报错了(游戏开服 报一些 ip 设置 数据格式的异常,但断点明明都是数字 没问题的)。无非就报一些 活动配置 和 没有 在 dict_server 表中加入 刚驾服 的ip(少了这个ip 客户端登陆是 报错 传递参数 为空 之类错误)。

  • 相关阅读:
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    Security and Cryptography in Python
    微信小程序TodoList
    C语言88案例-找出数列中的最大值和最小值
    C语言88案例-使用指针的指针输出字符串
  • 原文地址:https://www.cnblogs.com/zqr99/p/7658987.html
Copyright © 2011-2022 走看看