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 客户端登陆是 报错 传递参数 为空 之类错误)。
intellj(idea) 编译项目时在warnings 页签框里 报 “xxx包不存在” 或 “找不到符号” 或 “未结束的字符串字面值” 或 “需要)” 或 “需要;”等错误提示的更多相关文章
- maven 编译打包时,明明类文件没有问题,却提示错误:未结束的字符串字面值,maven-compiler-plugin:2.3.2
maven错误提示如下: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (de ...
- IntelliJ IDEA编译项目报错 "xxx包不存在" 或 "找不到符号"
简介 在维护一个新的项目时出现在的这个情况,项目构建时一直报错"xxx包找不到",但是引用的包和引用的类都是存在的,一开始以为是项目问题,还问了做过的同事,第一次搞好了,但是换了分 ...
- idea编译报错:未结束的字符串文字;非法的表达式;未结束的字符串字面值
在idea的Settings中,找到File Encodings,将IDE Encoding 改为UTF-8 要多试几次,清除缓存什么的,具体原因不知道,不过经常第一次修改不能成功.
- idea 编译报错 未结束的字符串字面值,非法的类型开始
1.修改编码 全局编码设置: File -> Other Settings -> Default Settings->file encoding 工程编码设置: File -> ...
- eclipse-在编译项目时js特别慢的问题
eclipse在编译项目时,当项目中导入了很多第三方js库时,eclipse在验证js时会消耗大量的时间,而我们却完全不用考虑那些js是否有错误 步骤: 去除eclipse的JS验证: 1.将wind ...
- egret命令行编译项目时 版本不对应的问题
egret 命令行编译项目时 如使用 egret build -e 会出现版本不对应的问题 分析原因 A,B项目 A项目使用1.8的egret引擎, B项目使用2.5引擎 但本地引擎升级至2.5.5, ...
- IDEA 编译时报错 “未结束的字符串文字” “解析时已经达到文件结尾”
Information:Using javac 1.7.0_75 to compile java sourcesInformation:java: Errors occurred while comp ...
- IDEA 编译报错: 未结束的字符串文字
最近在搞新项目,同事用的eclipse开发,而我用的是ide,项目初始是由同事创建的,项目编码是UTF-8,而我开发的ide工具默认是GBK编码,导致在编译的时候报错: 未结束的字符串文字 这个问题就 ...
- maven编译项目时提示:cached in the local repository
今天使用命令mvn compile编译maven项目时提示错误信息,部分错误信息如下: ...... was cached in the local repository, resolution wi ...
随机推荐
- Angular生成二维码
Installation - Angular 5+, Ionic NPM npm install angularx-qrcode --save Yarn yarn add angularx-qrcod ...
- 使用ssh config配置文件来管理ssh连接
我本人其实及其烦使用配置文件这种东西,有时候看到巨大又复杂的配置文件,甚至复杂过代码的时候,总感觉设计配置文件的人有些本末倒置. 但是ssh这个配置文件真的非常简单好用,让我稍微体验了一次配置文件使用 ...
- Mysql索引结构及常见索引的区别
一.Mysql索引主要有两种结构:B+Tree索引和Hash索引 Hash索引 mysql中,只有Memory(Memory表只存在内存中,断电会消失,适用于临时表)存储引擎显示支持Hash索引,是M ...
- TM数据
qatestjr_xuyue10@vipabc.comqatestjr_xuyue01@vipabc.com jrNHc2 jUBRTEqatestjr_nianyue@vipabc.com QE9E ...
- map内置函数分析所得到的思路
map:会根据提供的函数对指定序列做映射. map(func, *iterables) --> map object Make an iterator that computes the fun ...
- ansible系列5-开启加速 Ansible 执行速度的功能
SSH pipelining 是一个加速 Ansible 执行速度的简单方法.ssh pipelining 默认是关闭,之所以默认关闭是为了兼容不同的 sudo 配置,主要是 requiretty 选 ...
- BZOJ3207花神的嘲讽计划Ⅰ——主席树+hash
题目描述 背景 花神是神,一大癖好就是嘲讽大J,举例如下: “哎你傻不傻的![hqz:大笨J]” “这道题又被J屎过了!!” “J这程序怎么跑这么快!J要逆袭了!” …… 描述 这一天DJ在给吾等众蒟 ...
- Sublime Text3配置及控制台乱码[cmd杀死进程乱码/编译文件乱码]解决方法
[NodeJs] 1.安装 http://nodejs.cn/download/ 2.安装过程省略(因为已经安装过了) 和平时安装软件没区别 3.配置环境 计算机--->属性-->高级系统 ...
- Linux 下 wordpress 无法安装插件
修改目录权限mkdir -p wp-content/tmpchown -R www:www wp-contentchmod -R 777 wp-content 配置修改wp-config.php搜索 ...
- 洛谷 P2341 [HAOI2006]受欢迎的牛 解题报告
P2341 [HAOI2006]受欢迎的牛 题目描述 每头奶牛都梦想成为牛棚里的明星.被所有奶牛喜欢的奶牛就是一头明星奶牛.所有奶 牛都是自恋狂,每头奶牛总是喜欢自己的.奶牛之间的"喜欢&q ...