IDEA的一些坑(持续更新)

来源:互联网 发布:淘宝尺码表格怎么做 编辑:程序博客网 时间:2024/06/06 09:01

IDEA乱码问题

转为IDEA后,被这个乱码问题困扰了两天,最终解决了,写个文总结下。
我们的项目全部使用UTF-8,先出现的问题是新建文件不是UTF-8,先修改如下配置后正常
File->settings->Editor->File Encoding
将Project Encoding、IDE Encoding都改为UTF-8后,新建文件就是UTF-8了,文件编码可以在状态栏看到。如果以前用其他编码编写的代码会出现乱码,写个程序转下就好。

但改完后,控制台显示依旧是乱码,尝试修改编译器配置,如下:

Settings->Build,Execution,Deployment->Compiler->Additional build process VM options:

增加了-Dfile.encoding=UTF-8,仍然无效。
然后尝试在Maven选项中增加-Dfile.encoding=UTF-8,仍然无效。

后查到关于Idea testng单元测试乱码的解决,还可以更改idea的启动VM参数:
IEDA安装目录\bin下编辑idea.exe.vmoptions,增加一行-Dfile.encoding=UTF-8,依旧无效。
网上搜了很多资料,还是改上面那些东西,没啥新发现。
突然看到前文中的为-Dfile.encoding=UTF8,UTF-8编码实际写的UTF8,中间没有短横杠,赶紧修改,重启IDEA,控制台终于显示正常。

但执行下面两行后,输出都为UTF-8带短横杆的,对idea.exe.vmoptions里为何不识别带横杠的UTF-8很费解

System.out.println(String.format("file.encoding: %s", System.getProperty("file.encoding")));System.out.println(String.format("defaultCharset: %s", Charset.defaultCharset().name()));

IDEA特殊字符不可见问题

某次将某些代码临时拷贝到mac自带便签工具,拷贝回来后,代码突然报错,由于中间还编辑了一些其他代码,仔细检查后并未发现语法错误,但IDEA一直提示unexpected token。
怀疑是不可见字符引起,于是把代码发送至同事windows系统下的eclipse下,不可见字符终于显现出来真身了,一个方框,里面一个问号。

解决方法:plugin中可以搜到一个插件Zero width characters locator,不过安装后依旧不能让不可见字符显现。
临时解决办法:侧边栏滚动条 的语法检查错误提示浮动窗口里,可以查看到哪有不可见字符,按指示删除即可。

IDEA缓存问题

有时IDEA运行过久、项目开过多、手动添加修改一些配置,新导入的或者更换过依赖的项目会出现jdk不识别、maven的pom.xml检查多遍是正确的,但是仍然有些类无法被识别等错误。
这时候可能是IDEA缓存出现问题,可以强制删除缓存,点击如下选项:

File->Invalidate Caches/Restart...

源码文件语法错误不提示,编译后才提示语法错误

需要打开自动编译选项,具体位置:

File->Other Settings->Default Settings->Build,Execution,Deployment->Compiler->勾选 Make project automatically

还有两种情况也不会提示语法错误:
Power Save Mode打开时,即使设置了以上选项;
打开项目过多,机器编译速度较慢,导致还没有编译到相应文件时,便运行程序,也不会自动提示。

git或svn等源码控制软件,更新源码后,同文件内容不同步,仍然为旧内容

IDEA运行一段时间后,如果机器内存较小,运行缓慢,或者打开项目过多,会出现以上情况。
可以手动同步下磁盘文件,选项在

File->Synchronize

点击后,强制同步磁盘文件

0 0