1.情景展示

  刚入手idea,修改默认配置项,及常用功能介绍

2.具体问题

  IDEA 启动一段时间后闪退问题

  闪退的根本原因在于:idea默认分配的内存带不动它本身启动后所需要的实际内存。

  修改idea的配置文件,配置文件要去C盘找,比方说:我们一般情况下不会把idea安装到C盘,比方说,我把它安装到了D盘

idea 新手入坑操作指南_后台开发工具

  在这里修改idea64.exe.vmoptions文件,没有用!!!

C:\Users\Marydon\AppData\Roaming\JetBrains\IntelliJIdea2020.1\idea.exe.vmoptions
C:\Users\Marydon\AppData\Roaming\JetBrains\IntelliJIdea2020.1\idea64.exe.vmoptions

  自行按照此路径,找到自己的idea配置文件

idea 新手入坑操作指南_java_02

  -Xms 是最小启动内存参数;

  -Xmx 是最大运行内存参数;

  -XX:ReservedCodeCacheSize 保留代码占用的内存容量参数。

  将Xms值设置为512m,Xmx值设置为1060m,即可。

  这里,需要提醒的是,如果你使用的32位的idea的话,也就是idea.exe.vmoptions配置文件,-Xmx800m,最大值不能大于800,否则将无法启动!!!

  另外,我设置成800后,还是会导致闪退,所以,改用了idea64.exe启动。

  如果,你不知道修改哪里的配置文件才能生效,还有一种方式:

  双击shift,在弹窗中输入:change memory Settings,

idea 新手入坑操作指南_jar包_03

   点击,打开

idea 新手入坑操作指南_ide_04

  开启内存显示 

  双击shift呼出【Search Everywhere】窗口,输入:show memory indicator,点击开启

idea 新手入坑操作指南_ide_05

  底部右下角会显示实时内存使用情况

idea 新手入坑操作指南_java_06

  工具栏设置 

idea 新手入坑操作指南_ide_07

  这些,都要勾选上。 

  显示行号和代码分割线 

idea 新手入坑操作指南_ide_08

  切换主题

idea 新手入坑操作指南_ide_09

  设置背景图片

idea 新手入坑操作指南_java_10

  设置背景图片,透明度,以及预览效果

idea 新手入坑操作指南_后台开发工具_11

20200827

  设置鼠标滚轮调节字体大小

idea 新手入坑操作指南_ide_12

  设置类注释模板

  类注释:File-->Settings-->Editor-->File and CodeTemplates

idea 新手入坑操作指南_jar包_13

  将如下代码拷贝到上图右侧空白区域即可(这个更为详细,具体用哪个自己决定)

/**
*
* @description:
* @author: ${USER}
* @date: ${DATE} ${TIME}
* @version: 1.0
* @email: marydon20170307@163.com
*/

  需要注意的是:class的注释,只有在新建文件的时候,会自动生成。

  举个例子,复制原文件生成的新文件,是无法重新生成注释的,或者你把原来的注释删除,重新生成也是不行的,这一点相当恶心人(下面有解决办法)。

idea 新手入坑操作指南_后台开发工具_14

  如上图所示,我的date显示格式为:2020年07月10日 0010 12:03,估计大家的日期格式也会五花八门,造成这样的原因,一般是修改了windows系统时间的显示格式。那该如何生成我们想要的日期格式呢?

  配置这个就可以啦

/**
*
* @description:
* @author: ${USER}
* @date: ${YEAR}-${MONTH}-${DAY} ${TIME}
* @version: 1.0
* @email: marydon20170307@163.com
*/

  说点题外话(可以不看)

  之所以我们设置了File Header后,新建java文件能引用这个里的注释模板,是因为它引入了我们刚才修改的文件(不用我们管,idea已经配好了)

idea 新手入坑操作指南_java_15

20200827

  上面的类注释,只能在新建java类时有效,但在实际开发过程中,我们通常会直接复制类似的java类,来快速完成类的创建,而往往不是同一人开发的,所以会导致类的注释模板与自己之前的不统一的情况,所以,有必要创建一个可以通过调用快捷键来生成类注释模板。

  新建组和模板的方法,方法注释有讲解,因为是后期添加的,所以,可以先看方法注释,然后再回来创建。

idea 新手入坑操作指南_java_16

  配置快捷键,这里,我定义为**

  设置该模板的使用范围:java--》comment(注释,勾选其它的,在别的地方,其实也用不到,所以没有勾选的必要)

idea 新手入坑操作指南_ide_17

  配置模板

**
*
* @description :
* @author : $USER$
* @date : $DATE$ $TIME$
* @version : 1.0
* @email : marydon20170307 @163 .com
*/

  配置变量对应的函数表达式  

idea 新手入坑操作指南_ide_18

  在需要添加类注释的地方,打上/**,按Tab键即可 

idea 新手入坑操作指南_jar包_19

  注意:这里没有函数year()、month()和day(),用来表示日期的,只能是date(),所以,这里无法自定义年月日的表现形式,目前没有解决办法,只能手动修改展示格式。

  方法注释:File-->Settings-->Editor-->Live Templates

idea 新手入坑操作指南_ide_20

  点击右上角的+号,然后选择Template Group,然后输入group的name,我这里输入:Java,然后点ok 

  选中刚才创建的MyGroup,然后再次点击右侧的+,这次选择的是第一个Live Template。取名为 *(必须是这个)

idea 新手入坑操作指南_ide_21

  将如下代码拷贝到上图左侧空白区域

1 *
2 *
3 * @attention:
4 * @date: $date$ $time$
5 $params$
6 * @return: $return$
7 */

  注意:必须是*开头,而不是/**开头,另外这个*必须顶格。

  配置好模板后,点击右侧的 Editor variables配置变量

  模板参数对应的值如下:

$user$   user()
$date$ date()
$time$ time()
$params$ groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+='* @param: ' + params[i] + ((i < params.size() - 1) ? '\\n ' : '')};return result", methodParameters())methodParameters())
$return$ methodReturnType()

  将其对应的模板值,依次拷贝到对应的Expression中,如下图所示

idea 新手入坑操作指南_后台开发工具_22

  点击模板页面最下方的警告define,来设置将模板应用于哪些场景,选择Everywhere-->Java即可。

idea 新手入坑操作指南_java_23

  如果曾经修改过,则显示为change而不是define。

idea 新手入坑操作指南_后台开发工具_24

  如果应用范围太多,则将不能显示change按钮,我们只能选中要修改的模板,右键

idea 新手入坑操作指南_后台开发工具_25

idea 新手入坑操作指南_jar包_26

  意思是在注释的时候生效(全选也没有意义和必要),点击Apply,完事。

  如何使用方法注释模板?在类的方法上,输入/*,按Tab键即可生成 

idea 新手入坑操作指南_ide_27

  注意:这种配置方法还存在一个漏洞,那就是:当我们的类或者方法抛出异常后,再调用生成的模板,无法像eclipse那样,生成的注释没有@throws,需要自己手动添加,也挺恶心人的。

  添加步骤注释模板

  在实际开发过程中,往往需要执行很多步骤才能完成,比如说接口,所以,如果需要的话,把这个也加上。

  按照上面的方法进行即可。

idea 新手入坑操作指南_后台开发工具_28

  在需要添加注释的地方,输入:step

idea 新手入坑操作指南_ide_29

  按Tab键或者Enter键均可 

 

idea 新手入坑操作指南_后台开发工具_30

  date:2021-07-06

  添加日期注释模板

idea 新手入坑操作指南_ide_31

  修改 JAVA/HTML/XML 等文件的默认单行注释方式

  在idea中,使用单行注释快捷键注释当前行Ctrl+/,注释会直接顶格,很丑

idea 新手入坑操作指南_java_32

  我们想要的样式是,注释对齐语句,和注释的语句对齐,如何实现? 

idea 新手入坑操作指南_java_33

  File--》Settings--》Editor--》Code Style--》

  修改Java 的单行注释:Java--》Code Generation

idea 新手入坑操作指南_后台开发工具_34

  看图操作即可

idea 新手入坑操作指南_java_35

  修改HTML 的单行注释 

idea 新手入坑操作指南_jar包_36

  修改 XML 的单行和多行注释 

idea 新手入坑操作指南_jar包_37

  将两个都取消勾选 

  对于JavaScript也一样的操作方式   

  开启class文件自动编译功能 

idea 新手入坑操作指南_后台开发工具_38

  勾选“Build project automatically”选项,这里需要提醒的是:这个自动编译功能,只有在项目处于非运行状态下有效(换句话说,就是当我们在运行项目时,修改java文件,idea并不会对修改后的java重新编译class文件) 

  自动刷新项目目录

idea 新手入坑操作指南_ide_39

  新建多级package,总是嵌套的问题 

idea 新手入坑操作指南_后台开发工具_40

  举个例子,我现在要在java下创建三级目录java/aa/bb/cc,如何实现?

  选中java,右键,新建,package

idea 新手入坑操作指南_jar包_41

  package之间使用.点隔开(如果新建的Directory的话,使用/斜杠隔开)

idea 新手入坑操作指南_jar包_42

  包创建完成后,如下图所示

idea 新手入坑操作指南_ide_43

  这三级目录折叠了在一起,我想在bb目录下新建一个文件,如果我们直接新建的话,会创建到cc包下

idea 新手入坑操作指南_后台开发工具_44

  显然,这不是我们想要的,怎么办?

  有两种方式可以实现:

  方式一:修改Test.java的包位置 

idea 新手入坑操作指南_jar包_45

  打开Test.java,删掉cc,会报错,鼠标悬浮上去,我们就可以把它迁移到bb目录下啦

idea 新手入坑操作指南_ide_46

  方式二:将包识别为文件夹目录

idea 新手入坑操作指南_后台开发工具_47

  这样,cc就变成了目录 

idea 新手入坑操作指南_java_48

  拖动Test.java到bb目录下 

idea 新手入坑操作指南_java_49

  选中cc,Cancel Exclusion

idea 新手入坑操作指南_后台开发工具_50

  这样就好了

idea 新手入坑操作指南_jar包_51

  关闭自动更新

idea 新手入坑操作指南_jar包_52

 

idea 新手入坑操作指南_jar包_53

   压制代码重复警告

  @SuppressWarnings("Duplicates")

 

idea 新手入坑操作指南_后台开发工具_54

  代码自动提示忽略首字母大小写问题 

  idea的代码自动提示功能,默认设置第一个字母大小写必须匹配(大小写提示代码不一样) 

  2018版:Editor--》General--》Code Completion--》Case sensitive completion--》选择:None 

  2020版:

idea 新手入坑操作指南_ide_55

  IDEA 每次启动都显示选择项目页面 

idea 新手入坑操作指南_后台开发工具_56

  勾选上的意思是:每次打开idea时,都会自动打开最近使用的项目

  文件字符集设置 

  统一设置为UTF-8

idea 新手入坑操作指南_后台开发工具_57

  对于 Properties 文件,重要属性 Transparent native-to-ascii conversion 主要用于转换 ascii,一般都要勾选,不然 Properties 文件中的注释显示的都不会是中文。   

  代码审查级别

idea 新手入坑操作指南_ide_58

  在这里可以修改代码审查级别

20200827

  去掉never used提示(可以不弄)

  在类中,方法如果没有用到的话,方法名会变成灰色,鼠标悬浮,会有提示

idea 新手入坑操作指南_ide_59

idea 新手入坑操作指南_jar包_60

  取消类和方法上的勾选

idea 新手入坑操作指南_ide_61

  弄这个主要是封装的工具类或者类中的方法不一定就能马上用到,idea对其进行检测后,会对没有用到的类名或者方法名做变色处理。 

  代码补全骚操作     

var 声明

  前提:在方法体里面书写

"yolo" .     var ;     ---->  String str =      "yolo" ;
1000. var ;   ----> int a = 100;
new Test. var ; ----> Test test = new Test();

null 判断对象为空

test.     null
按回车键:
if (test == null ) {

}

notnull 判断对象为空

test.notnull
按回车键:
if (test != null ) {

}

nn 判断对象为空

test.nn
按回车键:
if (test != null ) {

}

for 遍历

List list =      new ArrayList<>();
list. for
回车:
for (String s : list) {

}

fori 带索引的遍历(正序索引)

list.fori
回车:
for ( int i = 0; i < list.size(); i++) {

}

fori 带索引的遍历(倒序索引)

list.forr
回车:
for ( int i = list.size - 1; i >= 0; i--) {

}

集合迭代

iter
回车:
for (String s : list) {

}

not 取反

boolean isTrue =      false ;
isTrue.not
回车:
!isTrue

while循环

isTrue.     while
回车:
while (isTrue) {

}

if 条件判断

num>99.     if
回车:
if (num>99) {

}

case强转

isTrue.     case
回车:
(() isTrue)

return 返回值

"abc" .     return
回车:
return "abc" ;

  idea右键没有diagrams选项  

  idea2020版,maven视图没有了jar包之间的关系图

idea 新手入坑操作指南_java_62

  首先,选中项目,右键,查看有没有

idea 新手入坑操作指南_后台开发工具_63

  如果没有,就看下面:

  出现这类问题一般是由于uml插件没有启用

  file -> settings -> plugins

idea 新手入坑操作指南_java_64

  如何查看mavenjar包UML类图?

  方式一:

  必须打开pom.xml才行,右键

idea 新手入坑操作指南_ide_65

   出现mavenjar包依赖图,点击1:1按钮,即可

idea 新手入坑操作指南_ide_66

idea 新手入坑操作指南_java_67

  按住Alt键不松手,鼠标悬浮地方会进行局部放大

20210316

  方式二:

  打开maven视图

  选中要查看依赖的模块或者项目名称

  打开jar包依赖树视图

idea 新手入坑操作指南_java_68

  在打开的视图中,点击1:1按钮

  如何查看某个jar包的依赖情况?

  以JackJson为例

  按Ctrl+F进行查找,输入:jack

idea 新手入坑操作指南_jar包_69

  我们看看jackson-annotationsjar包的依赖情况,鼠标点击该依赖,即可打开它的上下级关系

idea 新手入坑操作指南_java_70

2022年3月23日16:25:15

如何快速解决jar包依赖冲突?

idea 新手入坑操作指南_后台开发工具_71

安装插件Maven Helper

idea 新手入坑操作指南_java_72

打开pom.xml,左下角会出现:多了一个Dependency Analyzer视图。

idea 新手入坑操作指南_java_73

左侧显示的是所有存在冲突的jar包,点击第一个,右侧将出现依赖该jar包的其它jar包;

其中,冲突的jar包,会以红色展示出来,右击,选择“Exclude”。

idea 新手入坑操作指南_ide_74

依赖冲突排除完,我们可以点击“Reimport”来确认,看是否还存在冲突的jar包。

idea 新手入坑操作指南_后台开发工具_75

为了检验该插件的准确性,我们可以重新回到maven树视图

idea 新手入坑操作指南_java_76

我们可以看到:此时,已经没有报红的了(也就是不存在依赖冲突问题啦)。

20201012

  未信任的证书弹窗

idea 新手入坑操作指南_ide_77

  在打开前端界面的时候,会频繁弹出这个证书不受信任窗口。 

idea 新手入坑操作指南_后台开发工具_78

  在设置中找到服务器证书选项,勾选自动信任选项即可。

20201019

  如何使用intelij IDEA 显示一个类的所有方法?与eclipse的outline视图类似

idea 新手入坑操作指南_ide_79

  快捷键:Alt+7

idea 新手入坑操作指南_ide_80

20201024

  idea同时打开多个项目

  idea虽然没办法像eclipse那样同时加载多个项目,但也有折中之法,那就是:在新的窗口打开另一个项目

idea 新手入坑操作指南_ide_81

  如何实现? 

idea 新手入坑操作指南_ide_82

  按照上图路径,打开你想要打开的项目即可。如果打开最近项目里没有你想要的,可以选择上面的open重新添加项目。

idea 新手入坑操作指南_jar包_83

  第一个选项是:重新打开一个idea来加载该项目;

  第二个选项是:在idea打开该项目(本来的项目将会被切换成将要打开的项目);

  第三个选项是:每次打开项目时,弹出询问框,进行自主选择。

20201106

  在idea中,如果给字符串的值过长,在运行时会报错:java常量字符串过长

idea 新手入坑操作指南_java_84

  解决办法,见文末推荐

  idea设置代码自动换行和取消

idea 新手入坑操作指南_后台开发工具_85

 

  在左侧显示代码行数的位置,右键就会出现该菜单。 

2020-12-18

  比较两个文件差异

  在idea中,可以比较两个文件的差异,如何做?

  用鼠标点中一个文件,按住Ctrl键不松手,点击另一个文件,这样,就同时选中了两个文件,右键,选择:Compare Files即可。

idea 新手入坑操作指南_java_86

  显示文件修改记录

  有时,我们通常在改了代码之后,并关闭了该文件,此时想要撤销就没辙了;

  有的小伙伴可能要说还原代码不就完了?那咱们就先讲下怎么还原:

idea 新手入坑操作指南_后台开发工具_87

  不管你用的是git还是svn,选中要还原的文件,右键就能找到了,上图是git的示例。

  但在实际开发过程中,往往不能还原当前文件,因为我们修改了大量代码,已经改了N遍,还原就相当于付之一炬。 我们只想还原某个时间段自己在本地修改的代码。怎么实现?

  聪明的小伙伴或许已经看到了,在上图中,我们能看到:

  在git选项的上一项是:Local History,这个功能就是记录了文件在本地的所有修改历史。

idea 新手入坑操作指南_jar包_88

idea 新手入坑操作指南_java_89

  这里会显示选中文件的所有本地修改记录,最左侧是历史记录版本,最右侧是当前版本;

  如果这里都找不到你想还原的部分代码,那就只能凭着记忆重写了。

2021-01-08

  idea添加lombok插件

  在这里直接搜索、安装即可。

idea 新手入坑操作指南_ide_90

  然而,并不是在安装之后就OK啦,当你真正引入注解后,有时会在右下角弹出lombok需要注解进程提醒,点击“Enable”就可以了。  

idea 新手入坑操作指南_java_91

   

  掌握以上操作技能,再结合常用快捷键,上手idea就完全没有问题了。

2021-07-01

  以上配置好后,我们可以把idea的相关配置信息保存起来,以便于下次装机时直接使用,避免重复劳动。

idea 新手入坑操作指南_后台开发工具_92

  记住下面这个路径,进行复制

idea 新手入坑操作指南_java_93

  C:\Users\Marydon\AppData\Roaming\JetBrains\IntelliJIdea2020.1

  使用默认保存路径即可,事实上,我也无法指定保存位置。

idea 新手入坑操作指南_java_94

  选择“Show in Explorer”

idea 新手入坑操作指南_java_95

  我们把该配置文件放到非C盘位置即可,比方说,我会习惯放到idea的安装目录下

idea 新手入坑操作指南_ide_96

  这样,在windows更新或者重装系统或者安装最新版的idea时,无需重新配置,直接将配置文件导入即可。

2022年3月29日14:50:28

自动导包

自动清除无用的import。

idea 新手入坑操作指南_ide_97

格式化快捷键格式设置

展示格式化对话框:ctrl + shift + alt + L;

idea 新手入坑操作指南_ide_98

勾选:优化导入和重新整理代码,点击“Run”。

如果调用格式化快捷键后,代码内容没有发生变化,会出现这个提示。

idea 新手入坑操作指南_ide_99

2022年3月29日19:28:34

使用外置git

idea会自动将git插件安装到C盘;

idea 新手入坑操作指南_java_100

如果我们已经下载好Git了,可以在idea当中指定我们的git命令位置即可。

具体操作见文末文章《idea git基本用法(从git下载、更新、提交代码)》

如果确定不需要idea给咱们安装的git的话,可以运行unins000.exe进行卸载。

idea 新手入坑操作指南_jar包_101

使用外置maven

idea使用的是自带的maven插件,如何进行修改?

idea 新手入坑操作指南_ide_102

具体操作,对文末推荐《idea 配置maven》。

2022年3月31日17:17:48

idea项目的名称

先来看这张图

idea 新手入坑操作指南_jar包_103

从项目目录视图当中我们看到,项目的名称有两个:

圈①:goHome,是该项目在本地磁盘存放的目录名称(并一定就是项目的名称,只是代表此项目在该目录下存放而已),来源于圈③;

idea 新手入坑操作指南_java_104

我们可以把这个项目的存放路径随意指定:

idea 新手入坑操作指南_java_105

圈②:[unify-spring-boot-platform],根模块名称,也就是该项目下target目录所对应的名称,来源于圈④;

圈③:D:\workspace-idea\goHome,项目在本地磁盘的绝对路径;

圈④:该项目下的target目录所对应的名称(与是否分模块,有多少个模块无关);

除了上面两个之外,还有一个项目名称:

idea 新手入坑操作指南_后台开发工具_106

这个名称的作用是,供idea使用;

有些项目,idea管理项目是取的这个名称,有时候,取的是项目的绝对路径,很奇怪;

idea 新手入坑操作指南_后台开发工具_107

另外,这个名称一般情况下对应的是项目的名称,如果我们在idea当中对其修改后,该项目下.idea目录下会生成一个.name文件,里面存的就是修改后的项目名称。

idea 新手入坑操作指南_java_108

如果是maven项目的话,还有一个名称,就是打包时的所用的项目名。

可以在pom.xml中进行指定:

idea 新手入坑操作指南_后台开发工具_109

2022年4月25日17:26:23

导出配置

idea 新手入坑操作指南_ide_110

当我们需要升级idea的时候,可以把之前已经配置好的设置项,进行导出;

idea 新手入坑操作指南_后台开发工具_111

C:\Users\Marydon\AppData\Roaming\JetBrains\IntelliJIdea2020.1。

注意:不能更换导出的目录;

idea 新手入坑操作指南_jar包_112

选择:在文件夹打开;

idea 新手入坑操作指南_后台开发工具_113

如果不想它放在默认目录下的话,可以将它迁移到其它位置。

在新的idea当中进行导入,就可以啦。

2022年6月10日10:14:03

SVN新增文件无法提交

第一步:将新增的文件添加到svn

idea 新手入坑操作指南_java_114

第二步:提交即可。

SVN提交部分文件

选中要提交的文件。

idea 新手入坑操作指南_后台开发工具_115

写在最后

  哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

作者:​​Marydon​​