admin 管理员组

文章数量: 887142


2023年12月18日发(作者:传输方式同步和异步)

1

目录

Intellij IDEA教程 ............................................................................................................................... 2

安装配置 ................................................................................................................................... 2

初始配置 ........................................................................................................................... 2

优化配置 ......................................................................................................................... 10

项目管理 ................................................................................................................................. 16

同时管理多项目 ............................................................................................................. 16

创建Maven项目 ............................................................................................................ 20

导入Maven项目 ............................................................................................................ 23

JRebel热部署 ................................................................................................................. 29

常用技巧 ................................................................................................................................. 36

Debug跟踪条件变量 ..................................................................................................... 36

Live Template使用 ......................................................................................................... 37

代码分析 ......................................................................................................................... 39

代码重构 ......................................................................................................................... 43

粘贴历史复制记录 ......................................................................................................... 55

查看本地历史记录 ......................................................................................................... 56

文本比较 ......................................................................................................................... 57

SSH远程管理 ................................................................................................................. 58

管理远程主机 ................................................................................................................. 60

快捷键大全 ............................................................................................................................. 62

编辑 ................................................................................................................................. 62

查找/替换 ....................................................................................................................... 64

编译/运行 ....................................................................................................................... 64

调试 ................................................................................................................................. 64

导航 ................................................................................................................................. 65

重构 ................................................................................................................................. 66

版本控制/本地历史 ....................................................................................................... 66

Live Template .................................................................................................................. 66

代码生成 ......................................................................................................................... 67

如何查找 ......................................................................................................................... 67

新特性..................................................................................................................................... 68

Terminal ........................................................................................................................... 68

Search Anywhere ............................................................................................................ 69

LENS Mode ...................................................................................................................... 69

文件夹搜索 ..................................................................................................................... 69

搜索注释内容 ................................................................................................................. 70

Spring Bean Explorer ....................................................................................................... 70

2

Intellij IDEA教程

安装配置

初始配置

安装完Intellij IDEA 13后会弹出初始配置过程。

1、提示是否导入旧版本的settings配置,settings目录默认位于C:Users{User}.IntelliJIdea12目录下,通过此步骤,可以将旧版本的配置及插件直接导入到新版本中。

2、选择版本控制插件。

3

以下是我个人勾选的:

 Git:Git(分布式版本控制工具)插件,需本地安装Git。

 Subversion:SVN插件,新版本支持Subversion1.8

其他插件介绍:

 ClearCase:IBM Rational的SCM管理工具插件。

 CVS:CVS插件。

 hg4idea:Mercurial插件,与Git类似的分布式版本控制工具。

 Perforce:Perfoce插件,商业的版本控制工具。

 TFS:Team Foundation Server插件,微软的客户端-服务器源代码管理系统。

 Visual SourceSafe:VSS插件,微软的客户端的源代码管理系统。

3、选择Web/Java开发插件,勾选对自己有用的插件。

4

以下是我个人勾选的:

 Application Servers Views:配置应用服务器插件。

 Database:数据库插件,可用于管理MySQL、Oracle、SQLite等。

 Freemarker:支持freemarker语法插件。

 Java EE: Batch Applications:新版本增加的功能,支持Java EE 7批处理编程模型(JSR-352)。

 Java EE: Bean Validator:支持Java EE 6的数据验证模型(JSR-303)。

 Java EE: Contexts and Denpendency Injection:支持Java EE6的依赖注入模型(JSR-299)。

 Java EE: EJB, JPA, Servlets:EJB、JPA、Servlet的插件。

 Java EE: JMS, JSON Processing, Concurrency Transaction:JMS, JSON, Transaction等的插件。

 Java EE: RESTful Web Services: JAX-RS插件。

 Java EE: Web Services: JAX-WS插件。

 Java Server Pages: JSP插件。

 Persistence Frameworks:持久化(JPA、Hibernate)插件。

 Spring Batch: Spring批处理框架的插件。

 Spring Data:Spring数据访问框架(Mongodb、Redis、Hadoop)插件。

 Spring Security:Spring安全框架的插件。

 Spring:Spring插件

5

 Spring Web Services:Spring Web Services插件。

 Spring-AOP and @AspectJ:Spring-AOP和切面语言的插件。

 SQL:SQL插件

其他插件介绍:

 CoffeeScript:CoffeeScript插件,基于Javascript之上的一门编程语言。

 dmServer:dmServer插件,基于OSGi的模块化部署的java服务器。

 Google App Engine:GAE插件,用于创建GAE项目。

 GWT:GWT插件,支持GWT代码提示、编译、组件开发等。

 Hibernate:Hibernate插件,支持Hibernate代码提示、反向生成代码等。

 Java EE: Java Server Faces:JSF插件,支持JSF语法。

 Java EE: WebSockets:13版本新功能,支持Java EE WebSockets(JSR-356)。

 JBoss Seam Pageflow:Jboss Seam PageFlow插件。

 Jboss Seam Pages:Jboss Seam Page插件。

 Playframework:Playframework插件,一个full-stack的Java web框架。

 Spring Integration Patterns:Spring企业应用集成框架插件。

 Spring OSGi:Spring OSGi插件。

 Spring Roo Console:Spring Roo控制台,支持Spring Roo命令提示等。

 Spring Web Flow:Spring工作流插件。

 Struts 1.x:Struts1 插件,支持Struts1语法提示,结构化显示Action、Form等。

 Struts 2:Struts2插件,支持Struts2语法(Xml、Tag)提示,结构化显示Action等。

 Tapestry:Tapestry插件,一个MVC与模板技术结合的Java框架。

 Vaddin:Vaddin插件,一个基于GWT的Web RIA框架。

 Velocity:Velocity插件,支持Velocity语法提示。

4、选择应用服务器插件,这里指选择了Resin和Tomcat。

6

以下是我个人勾选的:

 Resin:Resin插件。

 Tomcat and TomEE:Tomcat或TomEE服务器插件,TomEE是经过J2EE 6 认证的

Tomcat 企业版本

其他插件介绍:

 Cloud Foundry:VMware主导基于Spring的开源PaaS云计算平台。

 CloudBees:基于Tomcat和MySQL的开源PaaS云计算平台。

 Geronimo:Apache的J2EE服务器。

 GlassFish:Sun的J2EE服务器。

 Heroku:Heroku是一个商业的Rails的PaaS云计算平台。

 Jboss:Jboss服务器插件。

 Jetty:轻量级的Servlet服务器。

 JSR45:兼容JSR-45的所有应用服务器,JSR-45(Debugging Support for Other Languages)为那些非 JAVA 语言写成,却需要编译成 JAVA 代码,运行在 JVM 中的程序,提供了一个进行调试的标准机制。

 OpenShift:红帽的开源PaaS云计算平台。

 WebLogic:Oracle的商业J2EE服务器。

 WebSphere:IBM的商业J2EE服务器。

7

5、选择HTML/Javascript开发插件

以下是我个人勾选的:

 CSS:CSS插件,可以直接显示css配色的颜色。

 HTML Tools:Html插件,支持emmet快速编写html代码。

 Inspection-JS:JS代码检测,目前还没见过哪个IDE对JS的支持有这么智能。

 JavaScript Debugger:js调试器,需chrome安装Debugger插件才可以支持。

 Javascript Intention Power Pack:补充上面JS代码检测的不足。

 Javascript:Javascript插件。

 QuirksMode:用于检测CSS和HTML的主流浏览器兼容性问题。

 W3C Validators:W3C标准检测插件。

其他插件介绍:

 Flash/Flex:Flash/Flex开发插件。

 LESS:LESS插件,LESS是一个CSS预处理器,通过简单的语法和变量对CSS进行扩展。

 SASS:SASS语法支持,SASS扩展了CSS,使用特定的语法来编写CSS。

 Stylus:Stylus插件,Stylus是一个CSS预处理器。

8

6、选择其他插件

以下是我个人勾选的:

 Ant:Ant插件。

 AspectJ:AspectJ切面框架插件。

 Byte Code Viewer:java字节码反编译查看插件。

 Commander:提供了左右两个用于查看项目结构的插件,可用于项目结构对比或导航。

 Copyright:版权声明插件,保证版权信息的一致。

 Coverage:查看代码覆盖率插件。

 Cucumber for Java:Java的Cucumber插件,Cucumber 是一个BDD驱动的自动化测试工具。

 DSM Analysis:架构可视化插件,战士模块间的依赖信息。

 Eclipse:支持导入eclipse结构的项目。

 Emma:检测代码覆盖率插件

 Gherkin:Gherkin语言插件,Cucumber要用到。

 Github:Github集成插件。

 IntelliLang:主要用于注解语法的注入验证、正则表达式语法检查等

 Junit:Junit单元测试插件。

 Maven:Maven插件。

9

 Maven Integration Extension:Maven依赖分析图插件。

 Properties:属性文件(.properties)编辑插件。

 Refactor-X:Xml代码格式化插件。

 Remote Hosts Access:远程主机访问,支持ftp/ssh。

 REST Client:用于访问REST Web Service的客户端插件。

 SSH Remote Run:支持通过Terminal运行SSH脚本。

 Structural Search:支持通过语法表达式进行搜索或替换。

 Task Management:任务管理插件,支持YouTrack, JIRA, Lighthouse, Pivotal Tracker,

GitHub, Redmine,Trac等问题跟踪系统。

 Terminal:终端命令插件。

 TestNG-J:TestNG插件。

 Time Tracking:任务管理插件中使用到的时间跟踪功能。

 Type Migration:类型重构优化插件,对不够完善的代码提示重构,比如,静态方法通过对象来调用而不是通过类调用等等。

 UML:UML插件。

 XpathView+XSLT:Xpath和XSLT,支持高亮、分析,自动补全等。

 XSLT-Debugger:XSLT调试工具。

 ZKM-Unscramble:分析Java堆栈跟踪插件。

其他插件介绍:

 Android Designer:安卓UI设计器

 Android:安卓插件

 ASP:ASP编辑器

 CFML:ColdFusion标记语言插件,ColdFusion是一个动态Web服务器,其CFML是一个类似JSTL的程序语言。

 Cucumber for Groovy:Groovy的Cucumber插件,Cucumber 是一个BDD驱动的自动化测试工具。

 Gradle:Gradle插件,Gradle是一个类似Maven的Java构建工具。

 Grails:Grails插件,Grails是Rails的Groovy实现。

 Groovy:Groovy插件,Groovy是一种基于JVM的动态脚本语言。

 GuiceyIDEA:Guice插件,Guice是Google开发的Java IOC框架。

 HAML:HAML插件,HAML是一种Rails下的模板语言。

 IDEtalk:IDEA的即时通讯工具,用处不大。

 J2ME:J2ME插件。

 JavaFX:JavaFX插件,JavaFX是Sun发布的RIA技术。

 Jboss Drools:Drools插件,Drools是一种Java业务规则引擎。

 Jboss jBPM:jBPM插件,jBPM是一种Java工作量引擎。

10

 Osmorc:OSGi插件。

 Plugin DevKit:IDEA插件开发工具。

 UI Designer:Swing UI设计插件。

 UI Designer(Core):Swing UI设计插件。

 YAML:YAML插件,YAML是一种数据序列化格式。

7、小结:

1、idea是很吃内存的IDE,所以对于没用到或者不了解的插件尽可能不选,有助于减少内存消耗,以及提高启动速度。

2、如果发现有些插件在初始配置中设置错误,可通过Settings-Plugins来启用或禁用。

优化配置

1、打开idea,点击Configure

2、进入配置导航页

11

介绍以下功能:

 Settings:IDEA配置,下面会重点讨论。

 Plugins:插件管理,可以重新禁用或启用插件。

 Import Settings:导入旧的配置文件,配置文件是jar格式。

 Export Settings:导出配置文件,定期导出配置文件会减少很多不必要的麻烦。

 Project Defaults:项目配置,包括SDK、Server等配置,可以在创建项目后再配置。

3、打开Settings窗口

12

Settings分为两部分,分别是Template Project Settings和IDE Settings。

 Template Project Settings是针对每个项目,不同项目的配置都不一样。

 IDE Settings是IDE配置,所有项目的配置都一样。

4、显示行号,打开Settings->Editor->Appearance,勾上“Show line numbers”

13

5、取消拼写检查,打开Settings->Inspection,取消“Spelling”

6、关闭自动保存,打开Settings-General,反选“Synchronize file on frame activation”和“Save

files on frame deactivation”。同时修改未保存的显示星号,打开Settings-Editor->Editor Tabs,勾上“Mark modified tabs with asterisk”。

14

7、开启序列化serialVersionUID检测,打开Settings->Inspections,

8、修改属性资源文件(.properties)的编码,打开Settings->File Encoding,设置Properties File的编码为UTF-8,并勾上“Transparent native-to-ascii conversion”

9、修改代码提示快捷键与输入法快捷键冲突的情况。打开Settings-keymaps,展开下拉列表Main menu->Code->Completion,修改Basic和SmartType快捷键为个人喜好。

15

10、隐藏没用到的文件,比如IDEA的项目配置文件(*.iml和*.idea),打开Settings-File Types,加入要隐藏的文件后缀。

11、代码提示不区分大小写,打开Settings->Editor->Code Completion,将” Case sensitive

completion”设置为None。

12、自动import类型,打开Settings->Editor->Auto Import,勾上“Optimize imports on the fly”和“Add unambiguous imports on the fly”。

16

项目管理

同时管理多项目

IDEA一个窗口只能管理一个项目,对用惯了Eclipse的同学来说可能会不大方便。思维转换下,把IDEA项目看成工作空间,IDEA模块看成项目,就可以实现一个窗口中管理多个项目。下面介绍下如何实现多项目管理。

1、创建空项目(空项目当做工作空间)。选择File->New Project,选择Empty Project,修改Project Name为项目名称,Project location为项目路径。

17

2、点击“Finish”完成空项目的创建,同时会打开空项目配置。

18

3、选择Project,设置Java SDK。

19

4、选择Modules,可以通过“New Module”或者“Import Module”创建或导入项目。

20

创建Maven项目

1、选择File->New Module,选择Maven,输入Module Name。

21

2、点击“Next”,修改groupId,如果是web项目,勾上“Create from archetype”,并选择“-archetypes-webapp”。

22

3、点击“Next”,检查项目配置信息和Maven配置文件是否正确。如果发现Maven的路径错误,先勾上“Override”,选择正确的路径。

23

建议:把Maven的复制一份到C:Users{UserName}.m2目录下,这样就不用每次都修改IDEA的Maven配置了。

4、点击“Finish”完成空项目下Maven模块的创建。

导入Maven项目

1、选择File->Import Module,选择Maven模块路径。

24

2、选择“Import module from external model”下的Maven

25

3、这一步保持默认即可

26

4、选择全局profiles。如果使用nexus私服,配置好全局profile,在这一步勾选profiles。

27

5、确认下groupId和artifactId。

28

6、点击完成即可。

创建Web部署包

打开File->Project Setting或Ctrl+Shift+Alt+S,打开Artifacts选项卡,会看到一些默认的部署包结构。

29

如果默认的部署包不符合要求,可以直接从Maven创建部署包。点击,选择“Web Applicate:Expanded” -> “From Maven”,便自动创建了Web部署包。

JRebel热部署

使用JRebel可以解决Java热部署的问题,下面介绍JRebel插件的安装和使用。

1、 安装JRebel插件,打开Settings->Plugins,点击“Install plugin from disk”

30

2、选择jrebel插件

31

3、安装完,重启IDEA。发现Settings下多了个JRebel选项,同时服务器管理面板多了“Run

with JRebel ‘Resin’”以及“Debug with JRebel ‘Resin’”。

4、配置应用服务器,以Resin为例。点击“Edit Configurations”

5、增加一个Resin服务器。

32

6、添加部署包,点击->Artifact,选择exploded包。设置Deployment method为。反选“Use default contenxt name”,如果要设置path,则填写Application context name。

7、修改服务器配置。修改端口为8080,关闭启动Resin后打开浏览器,修改“On ‘Update’

action”为”Update classes and resources“以及”On Frame deactivation“为”Update classes and

resources“。

33

8、修改VM options。

修改VM Options内容,以下是我个人配置,开启了spring、spring-core、spring-beans、spring-mvc、spring-data等插件。

-Xms256M

-Xmx512M

-XX:PermSize=64M

34

-XX:MaxPermSize=128M

-noverify

-javaagent:E:

-_plugin=true

--core_plugin=true

--beans_plugin=true

--aop_plugin=true

--mvc_plugin=true

--data_plugin=true

如果想启用JRebel的其他插件,用WinRAR打开,进入plugins目录列出了所有。启用xxx{-yyy}-jr-plugin-{version}.jar插件,配置为-{-yyy}_plugin=true。

9、点击“OK”,Application Servers窗口显示Resin选项。

35

10、点击,启动JRebel Debug模式

11、看到启动参数中包含如下内容,即表示热部署模式启动成功。

12、修改类,使IDEA失去焦点(可以切换到浏览器,或者点击下Windows任务栏等任何操作),IDEA增量Make一次,JRebel重新载入被改变的类,Console显示如下信息表示JRebel加载成功过。

36

常用技巧

Debug跟踪条件变量

通过变量面板查看变量在断点的当前值。

通过Alt+F8查看变量在断点的当前值。

通过Watches面板查看变量在断点的当前值

37

右键单击,弹出断点设置条件,重新Debug,进入该断点

Live Template使用

Live Template用于创建代码模板,使用live template可以快速生成代码,IDEA自带了一些默认的模板,比如psvm、sout等。下面介绍下如何创建适合自己的模板。

打开Settings-Live Template,显示默认的Live Template配置,了解下这些默认的template对开发十分有帮助。

38

点击,选择Template Group,创建名为user的组。

点击,选择Live Template,创建类注释模板,快捷键为“cc“,描述为“Class Comment”,Applicable设置为“Java:declaration”。

39

点击“Edit variables”,设置变量。

在类头部,按“cc”,再按Tab键,就生成了注释代码。

代码分析

代码规范检查,打开Analyze -> Inpect Code,检查代码是否符合Settings -> Inspections的设置。

40

检查指定的Inspections项。打开Analyze -> Run Inspection By Name,输入要检查的项。

分析代码依赖。打开Analyze -> Analyze Dependencies,查看依赖结果。

分析代码反向依赖。打开Analyze -> Analyze Backward Dependencies,查看反向依赖结果。

41

分析模块依赖。打开Analyze -> Analyze Module Dependencies,查看模块依赖。

分析DSM分层依赖。打开Analyze -> Analyze Dependency Matrix,查看依赖结构矩阵。

42

分析循环依赖。打开Analyze -> Analyze Cyclic Dependencies,查看循环依赖关系。

分析堆栈跟踪信息。打开Analyze -> Analyze Stacetrace,输入堆栈信息。

43

代码重构

重命名类,打开Refactor -> Rename或Shift+F6,输入新类名,如果需要修改变量名,则勾上要修改的代码。

44

重命名文件,打开Refactor -> Rename File,输入新文件名。

修改方法签名(参数、方法名、返回值等),打开Refactor -> Change Signature。

45

实例方法变成静态方法,打开Refactor -> Make Static。

静态方法转为实例方法,打开Refactor -> Convert To Instance Method,将参数中包含当前类对象的静态方法转为实例方法。

46

移动类,打开Refactor -> Move或F6,指定目的包或作为内部类。

复制类,打开Refactor -> Copy或F5,指定目的包。

方法或属性转为变量。打开Refactor -> Extract -> Variable或Ctrl+Alt+V,将对象属性或方法调用转本地变量。

47

数值转为常量。打开Refactor -> Extract -> Constants或Ctrl+Alt+C,输入常量值,回车确认,数值便转为常量。

变量转为对象属性。执行Refactor -> Extract -> Field或Ctrl+Alt+F,输入属性名,回车确认,变量便转为为对象属性。

变量转为方法参数。执行Refactor -> Extract -> Parameter或Ctrl+Alt+P,然后输入参数名,回车确认,变量便转为方法参数。

扩展多个参数为一个参数对象。光标移到方法名上,执行Refactor -> Extract -> Parameter

Object,选择要封装的参数,输入对象参数类型。

48

扩展变量或表达式为方法。光标移到要转换的变量上,执行Refactor -> Extract -> Method或Ctrl+Alt+M,输入方法名。

49

扩展变量或表达式为内部类或匿名类。执行Refactor -> Extract -> Method Object,输入类名。


本文标签: 插件 打开 代码