1.如何申请IntelliJ IDEA
-->通过开源项目免费申请 IntelliJ IDEA <--
2.如何切换成中文版
Settings -> Plugins -->下载 chinese language package
插件:jclasslib
IDEA字节码学习查看神器jclasslib bytecode viewer介绍
插件:Alibaba Java Coding Guidelines
遵循阿里JAVA规范的插件,让你写的代码符合该规范
Save Action 保存时触发动作
Grep Console --用于日志高亮
AiXcoder Code Completer & Code Search Engine 用来智能训练你的习惯
Codota/tabnine
强大的最佳实践代码编写提示, 安装好就ok了, 使用时候自然就觉得厉害了.
Auto filling Java call arguments
在调用函数时,使用 Alt+Enter键,触发联想功能,选择”auto fill call parameters”自动填充调用的函数的形参名。
SequenceDiagram
查看方法调用时序图, 具体方法右键可查看
FindBugs
代码分析插件
SonarLint:编码风格提示
分析后会给出代码不足的改进方案
code review 插件
Upsource: Code Review and Project Analytics by JetBrains
New Relic CodeStream: GitHub, GitLab, PRs and Code Review - IntelliJ IDEs Plugin | Marketplace
===================
如何替换启动图
替换 jar 包中的图片资源
- 先退出正在运行的 IDEA, 避免出现什么问题
- 找到文件
idea 安装路径
/lib/resources.jar
macOSIntelliJ IDEA.app
右键选择Show Package Contents
后找到 lib/resources.jar 文件 - 使用压缩软件替换
idea_logo.png
和idea_logo@2x.png
这两个文件, 换成自己喜欢的图片 - 重新启动 IDEA, 大功告成
====================
3.IntelliJ IDEA设置快捷键为Eclipse风格
File-->setting-->keyMap
4 设置成eclipse的主题
File -> Settings -> Editor -> Color Scheme ->
5.字体选择和大小
File -> Settings ->Appearance 改UI的字体
改编辑区字体样式
File -> Settings ->Editor->Font
6.单行的长度设置
File -> Settings ->Editor-->Code style-->Java-->Wrapper and Braces
Hard Wrap at
7.控制台部分中文乱码问题:
Help->edit custom VM options 添加
-Dfile.encoding=UTF-8
8.想要运行JAVA飞行器,在VM option里添加
-XX:+UnlockCommercialFeatures
9.重建项目索引
File -> Invalidate caches
10.构建和运行工具需要把默认的gradle换成IDEA,
11.如何正常查看properties的中文部分
Settings-->File Encodings-->Transparent native-to ascii conversion
12.如何调出DEBUG线程界面
debugger最右侧小方块按钮点击,下拉勾选Threads
13.自动导入
打开自动编译
自动导入内部类
选中Settings > Editor > Code Style > Java > Imports > Insert imports for inner classes
的复选框
proto 文件import 异常
如何保存代码热更新?
如何正常停进程?Stop debug session
终止Debug调试模式,Ctrl+F2
如何查看静态数值,比如,用Ctrl+鼠标浮上去
private static final long MAX_SEQ_ID = 1L << 16;
常用快捷键
将idea的keymap替换为eclipse后,ctrl+f无法在run,debug控制台搜索
在快捷键处吧find改成Ctrl+F
如何云同步IDEA的设置,主题,安装的插件
可以同步如下项目
右下角有一朵云处理同步
文件大小达到上限时改如何调整?
今天发现一个 idea 智能提示不生效的案例
StructDB.java 文件现在有2.6M idea 默认情况下提示 StructDB(红框中部分) 显示成红色,
也没办法给正确代码提示,.失效,
临时解决方案是调大 idea 智能提示 最大加载文件大小
1.help->Edit Custom Properties
修改 idea.max.intellisense.filesize=102400
=================================
Idea Live Templates代码模板
经常要写logger的定义:private static final Logger logger = LoggerFactory.getLogger(MyClass.class);如果手工复制黏贴,就很繁琐,
这时,就可以用到IDEA的 Live Templates,settings-->live Templates-
Template Text 内容为:
private static final org.apache.logging.log4j.Logger LOGGER = org.apache.logging.log4j.LogManager.getLogger($CLASS$.class);
为什么要写类的全路径,是因为如果不写的话,还得import类,多了一次操作,
Edit variables:
然后在编辑器里输入log就会出来
=============================================
如果只要阻断当前线程的话,在断点处如下设置:
组合启动
Ctrl+Y:删除当前行 Ctrl+D:复制当前行 Ctrl+Shift+J:将选中的行合并成一行 Ctrl+N:查找类文件 Ctrl+Shift+N:查找文件 Ctrl+G:定位到文件某一行 Alt+向左箭头:返回上次光标位置 Alt+向右箭头:返回至后一次光标位置 Ctrl+Shift+Backspace:返回上次编辑位置 Ctrl+Shift+反斜杠:返回后一次编辑位置 Ctrl+B:定位至变量定义的位置 Ctrl+Alt+B:定位至选中类或者方法的具体实现 Ctrl+Shift+B:直接定位至光标所在变量的类型定义 Ctrl+U:直接定位至当前方法override或者implements的方法定义处 Ctrl+F12:显示当前文件的文件结构 Ctrl+Alt+F12:显示当前文件的路径,并可以方便的将相关父路径打开 Ctrl+H:显示当前类的继承层次 Ctrl+Shift+H:显示当前方法的继承层次 Ctrl+Alt+H:显示当前方法的调用层次 F2:定位至下一个错误处 Shift+F2:定位至前一个错误处 Ctrl+Alt+向上箭头:查找前一个变量共现的地方 Ctrl+Alt+向下箭头:查找下一个变量共现的地方 Ctrl+=:展开代码 Ctrl+-:收缩代码 Ctrl+Alt+=:递归展开代码 Ctrl+Alt+-:递归收缩代码 Ctrl+Shift+=:展开所有代码 Ctrl+Shift+-:收缩所有代码 Ctrl+Shitft+向下箭头:将光标所在的代码块向下整体移动 Ctrl+Shift+向上箭头:将光标所在的代码块向上整体移动 Ctrl+Alt+Shift+向左箭头:将元素向左移动 Ctrl+Alt+Shift+向右箭头:将元素向右移动 Alt+Shift+向下箭头:将行向下移动 Alt+Shift+向上箭头:将行向上移动 Ctrl+F:在当前文件中查找 Ctrl+R:替换字符串 Ctrl+Shift+F:在全局文件中查找字符串 Ctrl+Shift+R:在全局中替换字符串 Alt+F7:查找当前变量的使用,并列表显示 Ctrl+Alt+F7:查找当前变量的使用,并直接对话框提示 Ctrl+F7:在文件中查找符号的使用 Ctrl+Shift+F7:在文件中高亮显示变量的使用 Ctrl+O:重写基类方法 Ctrl+I:实现基类或接口中的方法 Alt+Insert:产生构造方法,get/set方法等 Ctrl+Alt+T:将选中的代码使用if,while,try/catch等包装 Ctrl+Shitf+Delete:去除相关的包装代码 Alt+/:自动完成 Alt+Enter:自动提示完成,抛出异常 Ctrl+J:插入Live Template 快速插入一行或者多行代码 Ctrl+Alt+J:使用Live Template包装 Ctrl+/:使用//注释 Ctrl+Shift+/:使用/**/注释 Ctrl+Alt+L:格式化代码 Ctrl+Alt+I:自动缩进行 Ctrl+Shift+O:优化import Ctrl+]:快速跳转至诸如{}围起来的代码块的结尾处 Ctrl+[:快速跳转至诸如{}围起来的代码块的开头处 Ctrl+Shift+Enter:将输入的if,for,函数等等补上{}或者;使代码语句完整 Shift+Enter:在当前行的下方开始新行 Ctrl+Alt+Enter:在当前行的上方插入新行 Ctrl+Delete:删除光标所在至单词结尾处的所有字符 Ctrl+Backspace:删除光标所在至单词开头处的所有字符 Ctrl+向左箭头:将光标移至前一个单词 Ctrl+向右箭头:将光标移至后一个单词 Ctrl+向上箭头:向上滚动一行 Ctrl+向下箭头:向下滚动一行 Ctrl+W:选中整个单词 Ctrl+Shift+U:切换大小写 Shift+F6:重命名 Ctrl+F6:更改函数签名 Ctrl+Shift+F6:更改类型 Ctrl+Alt+V:把方法的返回自动变成声明变量
JAVA doc 乱码
在"Tools->Gerenate JavaDoc"面版的"Other command line arguments:"栏里输入
-encoding utf-8 -charset utf-8
就是以utf-8编码读取文件和生成javadoc。
-encoding utf-8是文件编码,-charset utf-8是生成的javadoc的编码。
如何让JPA Buddy 复制的SQL 不自动格式化
修改前,复制一段SQL创建语句:
DROP TABLE IF EXISTS `svn_user`; CREATE TABLE `svn_user` ( `id` bigint(64) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(64) DEFAULT NULL COMMENT '账号', `password` varchar(200) DEFAULT NULL COMMENT '密码', `real_name` varchar(64) DEFAULT NULL COMMENT '真名', `email` varchar(45) DEFAULT NULL COMMENT '邮箱', `source_id` bigint(20) DEFAULT '0' COMMENT 'SVN源ID', `depart_id` bigint(20) DEFAULT '0' COMMENT '部门id', `comment` varchar(255) DEFAULT NULL COMMENT '备注', `status` int(11) DEFAULT NULL COMMENT '状态', `add_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `modify_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', KEY `INDEX_SD_NE` (`source_id`,`name`) USING BTREE, KEY `INDEX_SD` (`source_id`) USING BTREE, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='SVN用户表';
到另外一个SQL文件,会自动格式化成:
DROP TABLE IF EXISTS `svn_user`; CREATE TABLE `svn_user` ( `id` bigint(64) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(64) DEFAULT NULL COMMENT '账号', `password` varchar(200) DEFAULT NULL COMMENT '密码', `real_name` varchar(64) DEFAULT NULL COMMENT '真名', `email` varchar(45) DEFAULT NULL COMMENT '邮箱', `source_id` bigint(20) DEFAULT '0' COMMENT 'SVN源ID', `depart_id` bigint(20) DEFAULT '0' COMMENT '部门id', `comment` varchar(255) DEFAULT NULL COMMENT '备注', `status` int(11) DEFAULT NULL COMMENT '状态', `add_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `modify_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', KEY `INDEX_SD_NE` (`source_id`,`name`) USING BTREE, KEY `INDEX_SD` (`source_id`) USING BTREE, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='SVN用户表';
怎么样才能做到不自动格式化呢?
做以上的设置,去掉的Inherit general SQL style勾选,勾选上Disable formatting,这样就不会自动格式化了
如何添加 --add-exports java.management/sun.management=ALL-UNNAMED