目录

Intellij Idea - 快速指南

Intellij Idea - Introduction

IntelliJ是Java中功能最强大,最受欢迎的集成开发环境(IDE)之一。 它由JetBrains开发和维护,可作为社区和终极版本提供。 这一功能丰富的IDE可实现快速开发并有助于提高代码质量。

什么是IDE及其好处?

IDE代表集成开发环境。 它是多种工具的组合,使软件开发过程更容易,更健壮,更不容易出错。 它比纯文本编辑器具有以下优点 -

  • 与编译器,调试器,版本控制系统,构建工具,各种框架,应用程序分析器等有用工具集成。

  • 支持代码导航,代码完成,代码重构和代码生成功能,可以促进开发过程。

  • 通过插件支持单元测试,集成测试和代码覆盖。

  • 提供丰富的插件集以进一步增强IDE功能。

IntelliJ的功能

IntelliJ IDEA具有一些高效的Java代码完成功能。 它的预测算法可以准确地假设编码器试图输入什么,并为他完成,即使他不知道特定类,成员或任何其他资源的确切名称。

深入了解

IntelliJ IDEA真正理解并deep insight您的代码以及编码器的上下文,这使得它在其他Java IDE中如此独特。

  • Smart code completion - 它支持基于上下文的代码完成。 它给出了当前上下文中适用的最相关符号的列表。

  • Chain code completion - 它是一种高级代码完成功能,它列出了可通过当前上下文中的方法或getter访问的适用符号。

  • Static member's completion - 它允许您使用静态方法或常量,并自动添加所需的import语句以避免编译错误。

  • Detecting duplicates - 它会动态找到重复的代码片段,并向用户提供有关它的通知/建议。

  • Inspections and quick-fixes - 每当IntelliJ检测到您即将犯错时,会在同一行弹出一个小灯泡通知。 单击它会显示建议列表。

开发人员人体工程学

IntelliJ IDEA是围绕编码原则设计的,应允许开发人员尽可能少地分散代码。 这就是为什么在这种情况下,编辑器是屏幕上唯一可见的,具有所有其他与编码无关的功能的专用快捷方式。

  • Editor-centric environment - 快速弹出窗口有助于在不离开当前上下文的情况下检查其他信息。

  • Shortcuts for everything - IntelliJ IDEA几乎可以Shortcuts for everything提供键盘快捷键,包括快速选择和在工具窗口之间切换等等。

  • Inline debugger - 内联调试器允许您在IDE本身中调试应用程序。 它使开发和调试过程无缝。

内置开发人员工具

为了帮助开发人员组织他们的工作流程,IntelliJ IDEA为他们提供了一个惊人的工具集,包括反编译器,Docker支持,字节码查看器,FTP和许多其他工具 -

  • Version control - IntelliJ支持大多数流行的版本控制系统,如Git,Subversion,Mercurial,CVS,Perforce和TFS。

  • Build tools - IntelliJ支持Java和其他构建工具,如Maven,Gradle,Ant,Gant,SBT,NPM,Webpack,Grunt和Gulp。

  • Test runner and code coverage - IntelliJ IDEA可让您轻松执行单元测试。 IDE包括主要测试框架的测试运行器和覆盖工具,包括JUnit,TestNG,Spock,Cucumber,ScalaTest,spec2和Karma。

  • Decompiler - IntelliJ附带了一个用于Java类的内置反编译器。 如果您想查看一个没有源代码的库,可以不使用任何第三方插件。

  • Terminal - IntelliJ提供内置终端。 根据您的平台,您可以使用命令行提示符,如PowerShell或Bash。

  • Database tools - IntelliJ提供数据库工具,允许您连接到实时数据库; 运行查询; 浏览和更新数据; 甚至可以在IDE本身的可视化界面中管理您的模式。

  • Application server - IntelliJ支持主要的应用程序服务器:Tomcat,JBoss,WebSphere,WebLogic,Glassfish等等。 您可以将工件部署到应用程序服务器上,并在IDE本身中调试已部署的应用程序。

  • Docker support - 通过单独的插件,IntelliJ提供了一个专用工具窗口,可以让您连接到本地运行的Docker机器。

终极版与社区版的比较

Ultimate Edition旨在协助Web和企业开发,而Community Edition则专为JVM和Android开发而设计。 让我们考虑一些有助于我们理解两个版本之间比较的重要观点 -

特征 社区版 终极版
LicenseCommercial 开源,Apache 2.0。 用于商业开发。
Java, Kotlin, Groovy, ScalaSupportedSupported
Android开发 SupportedSupported
Maven, Gradle, SBTSupportedSupported
Git, SVN, Mercurial, CVSSupportedSupported
检测重复 Supported 不支持
Perforce, TFSSupported 不支持
JavaScript, TypeScriptSupported 不支持
Java EE,Spring,GWT,Vaadin,Play,Grails,Other Frameworks Supported 不支持
数据库工具,SQL Supported 不支持

Intellij Idea - Installation and Configuration

在本章中,我们将了解如何安装和配置IntelliJ IDEA。 该过程的第一步从选择版本开始。 根据您的要求,您可以下载社区或终极版。 顾名思义,社区版是完全免费的,我们也可以将它用于商业开发。 但是,终极版是付费版,我们可以自由评估30天。

Installation on Windows

IntelliJ与2003年之前几乎所有版本的Windows兼容。全面的列表将是:Windows 10/8/7/Vista/2003/XP。 建议您在Windows上安装IntelliJ之前关闭所有其他应用程序。

系统需求 (System Requirements)

  • 建议至少2 GB的RAM容量以实现无缝性能。

  • 为了更好的可视化,建议使用1024x768的屏幕分辨率。

  • 安装最少300 MB磁盘空间,缓存额外1 GB。

下载和安装

  • Downloading - 您可以从他们的官方网站下载Windows安装程序。

  • Installation - 让我们从安装开始,然后是配置步骤。 IntelliJ的安装与其他软件包类似。 只需双击安装程序,然后按照屏幕上的说明完成安装过程。

Linux安装 (Installation on Linux)

要在Linux平台上安装IntelliJ,您需要注意32位JDK未捆绑,因此建议使用64位系统。

系统需求 (System Requirements)

  • GNOME,KDE或XFCE桌面环境

  • 建议无缝使用至少2 GB的RAM

  • 300 MB的磁盘空间用于安装,并为缓存添加1 GB

  • 为了更好的可视化,建议使用1024x768的屏幕分辨率

下载和安装

  • Downloading - 您可以从他们的官方网站下载IntelliJ for Linux。

  • Installation - 我们已经下载了tar.gz包。 请注意,在我们的案例中,bundle的名称是ideaIC-2017.2.5.tar.gz。 它可能随版本/版本而变化。 请使用适当的包名称。

First extract it using following command:
$ tar xvf ideaIC-2017.2.5.tar.gz
It will create new directory with idea-IC-172.4343.14 name. 
Now change directory to idea-IC-172.4343.14/bin/ and execute idea.sh shell script as shown below:
$ cd idea-IC-172.4343.14/bin/
$ ./idea.sh
Follow on-screen instructions to complete installation procedure.

配置IntelliJ

两个平台上的配置步骤类似。 要开始配置,请启动IntelliJ应用程序。 (可选)您可以从此向导import现有配置。 单击下一步按钮继续。

Step1 - 如果您使用的是终极版,则会弹出许可证激活窗口。 选择评估免费选项,然后单击评估按钮,如下图所示。

许可证激活

Step 2 - 接受许可协议以继续并按照屏幕上的说明启动IntelliJ。 您将看到IntelliJ的欢迎屏幕。

Step 3 - 现在,是时候使用IntelliJ配置Java Development Kit(以下,我们将其称为JDK)。 如果尚未安装JDK,请按照here的说明进行操作。

  • 在欢迎屏幕上,单击“配置”

  • 从下拉列表中选择“项目默认值”

  • 选择“项目结构”选项

项目结构
  • 从“平台设置”菜单中选择“SDK”选项。

  • 单击“加号”图标并选择“JDK”选项。

  • 选择JDK的主目录,然后按照屏幕上的说明进行操作。

平台设置

Intellij Idea - Getting Familiar

在本章中,我们将更加熟悉IntelliJ IDEA。 要讨论任何工具的优点和功能,必须熟悉该工具,IntelliJ也不例外。

本章概述了IntelliJ。 本章首先讨论IDE的可视元素,配置设置,最后讨论JVM和平台属性。

视觉元素

IDE的重要一点是它的视觉元素。 识别和理解视觉元素使您能够以quicker ,更轻松的方式执行操作。 以下屏幕截图及其上的标签显示了IntelliJ的主界面。

视觉元素
  1. Menu bar - 菜单栏提供创建新项目的选项以及与项目相关的其他重要操作,如代码重构,构建,运行,调试,版本控制选项等。

  2. Tool bar - 工具栏提供编译,调试和运行选项的快捷方式。 您可以根据自己的要求进行自定义。

  3. Navigation bar - 导航栏可以更轻松地在项目中导航。 随着代码库的增加,此功能非常方便。

  4. Tools tab - “工具”选项卡显示在主窗口的两侧。 从这里,您可以访问数据库等重要工具; Maven/Ant构建等等。

  5. Project perspective - 项目透视图窗口显示项目的各种元素,如包,模块,类,外部库等。

  6. Editor window - 这是开发人员花费大部分时间的地方。 编辑器窗口允许您使用语法突出显示和其他有用功能编辑/编写代码。

在主窗口的底部,有一个status栏,显示有关该文件的一些其他属性 - 如格式和编码类型。 它还提供切换当前文件的只读属性的选项。 您还可以从此处管理检验级别。

使用插件

插件有助于扩展IntelliJ的功能。 它提供了大量的插件,包括数据库,版本控制,分析,这个列表还在继续。

插件测距

管理插件的步骤

请按照以下步骤管理插件 -

  • 转到文件→设置菜单。

  • 选择左窗格中的“插件”选项卡。

  • 此窗口列出了所有已安装的插件。 每个插件名称的右侧都有一个复选框。 切换该复选框可启用/禁用插件。

  • IntelliJ在线插件库可在此处获得。 要添加/删除插件存储库,请单击“浏览存储库”按钮,它将提供一种需要的方法。

  • 除此之外,它还允许脱机插件安装。 为此,请从磁盘按钮下载插件并选择安装插件,然后导航到下载路径。

要对卸载,更新和排序等插件执行其他操作,请右键单击任何插件。 它将显示一个下拉菜单,您可以从中选择其中一个操作。

使用设置

本节提供了一些管理设置的重要提示。 它使您可以导入,导出和共享IntelliJ设置。

导出设置

它允许将当前设置导出为jar文件。

  • 转到文件→导出设置。

  • 导出设置窗口列出与UI,调试器,SDK及其他相关的可用设置。

  • 它提供了一个复选框供选择。 选择完成后,单击“确定”按钮将设置保存在本地磁盘上。

导入设置

它允许导入存储在jar文件中的设置。

  • 转到文件→导入设置。
  • 通过导航文件夹结构选择设置jar
  • 单击“确定”按钮。

共享设置

IntelliJ IDEA允许您在不同实例之间共享IDE设置。 当您想要在团队或组织中应用相同的设置时,这尤其有用。 前提条件是启用Settings Repository插件。 它默认安装并启用。

确保其地位 -

  • 转到文件→设置→插件

  • 搜索设置存储库插件

我们可以将当前设置存储在GitHub/Bitbucket上并将其应用于其他实例。 存储当前设置 -

  • 转到文件→设置存储库。

  • 在上游URL对话框中键入Git存储库URL。

  • 单击“覆盖远程”按钮。

  • 要将相同的设置应用于其他实例,请单击“覆盖本地”按钮。

配置JVM选项和平台属性

我们可以通过导航到“ Help → Edit Custom VM Options菜单来配置JVM选项。 以下是我们可以设置的一些重要的JVM选项。

  • –server - 它允许选择Java HotSpot Server VM

  • -Xms《size》 - 它设置初始Java堆大小。 默认值为128 MB。

  • -Xmx《size》 - 设置最大Java堆大小。 默认值为750 MB。

  • -Xss《size》 - 它设置Java线程堆栈大小。

  • –XX - 它允许设置GC算法和其他属性。

Intellij Idea - Create First Java Project

现在是我们获得IntelliJ实践经验的时候了。 在本章中,我们将创建我们的第一个Java项目。 我们将编写并执行传统的Hello World程序。 本章介绍Java应用程序的编译和运行。

创建项目

对于与开发相关的任何事情,开发人员必须使用IntelliJ创建一个新项目。 让我们按照这些步骤创建一个项目 -

  • 启动IntelliJ。

  • 转到File → New → Project菜单。

  • 选择Java项目和相应的SDK,然后单击Next按钮。

Java项目
  • 如果要使用main方法创建Java类,请从模板复选框中选择“创建项目”。

  • 从下面显示的对话框中选择命令行应用程序,然后继续。

  • 输入项目名称和目录位置。

  • 单击“完成”按钮。

创建包

包在Java项目下创建,可以单独创建,也可以在创建类的同时创建。 让我们按照以下步骤创建一个包 -

  • 转到项目视角。

  • 右键单击Project,选择New-》Module option”。

项目前景
  • 新模块窗口将类似于新项目。 选择Java选项和相应的SDK,然后单击Next按钮。

  • 输入模块名称。

  • 单击“完成”按钮。

创建Java类 (Create Java Class)

在本节中,我们将学习如何创建Java类。 可以在Java模块下创建Java类。 请按照以下步骤创建模块 -

  • 转到Project透视图。

  • 展开Project并从模块中选择src目录。

  • 右键单击它; 选择New-》Java Class选项。

  • 在对话框中输入类名,然后单击“确定”按钮。

  • 它将使用类声明打开Editor窗口。

运行Java应用程序

我们现在将看到如何运行Java应用程序。 请按照以下步骤查看它是如何运行的 -

  • 让我们编写一个简单的代码,它将在控制台上打印一条消息。 在编辑器窗口中输入以下代码 -

public class HelloWorld { 
   public static void main(String[] args) { 
      System.out.println("Hello, World !!!"); 
   } 
}
  • 转到“运行”菜单,然后选择“运行”选项。

  • 选择Class name,然后单击Run。

  • 如果没有编译错误,则它将在窗口底部显示输出。

Java应用程序

Intellij Idea - Deep Dive

本教程的前四章旨在为初学者提供IntelliJ的基本概述。 本节深入探讨了IntelliJ,并讨论了有关项目,其格式以及其他内容的更多信息。

了解项目

项目是您正在使用的应用程序或软件。 它可以包含多个模块,类,库,配置等。 它是层次结构中最顶层的元素。

了解模块

模块在“项目”下面有一个梯级。 模块是一个独立的实体,可以独立于其他模块进行编译,调试和运行。 单个项目可以包含多个模块。 您可以随时在项目中添加或删除模块。

除此之外,我们还可以导入现有模块。 请按照以下步骤导入现有模块 -

  • 转到文件→项目结构。
  • 选择模块,然后单击加号图标。
  • 它将显示导入模块的选项。
模块功能

了解文件夹

Content root是包含组成模块的所有文件的文件夹。 一个模块可以有多个内容文件夹。 文件夹分为以下类型 -

  • Sources - 通过将此类别分配给文件夹,我们指示IntelliJ此及其子文件夹包含java源代码,并且应将其编译为编译过程的一部分。

  • Tests - 通过将此类别分配给文件夹,我们指示IntelliJ它是单元测试的位置。 此文件夹可以从Sources文件夹中访问类。

  • Resources - 它表示项目中使用的各种资源文件,例如图像,XML和属性文件。 在编译过程中,此文件夹的内容将原样复制到输出文件夹。

  • Excluded - IntelliJ不会将排除文件夹中的内容编入索引。 这意味着IntelliJ不会提供代码完成建议和其他提示。 例如,默认情况下排除输出目录和目标目录。

  • Test resources - 这类似于资源并用于单元测试。

内容根

了解图书馆

库是不同类的汇编。 库使代码可重用。 在Java中,库可以包含在ZIP,Jar或简单文件夹中。 我们可以在三个不同的级别定义库。 级别是 - 全局,项目和模块级别。

  • Global level - 由所有项目共享。

  • Project level - 由Project level的所有模块共享。

  • Module level - 由这些模块的类共享。

理解方面

方面是模块的扩展。 他们增加了对框架和技术的支持。 将facet添加到模块时,IntelliJ会识别它添加支持。 例如,编辑器中的提示和帮助,窗口栏中的新工具,依赖性下载等。 您可以从File → Project Structure窗口添加构面,如下所示 -

窗户栏

Artifacts

工件是项目的输出。 它可以是简单的JAR文件,Java EE应用程序或Java EJB应用程序。 如果我们使用Gradle或Maven等外部构建工具,那么IntelliJ会自动为它们添加工件。 可以通过导航到File → Project Structure来创建工件,如下所示 -

文物

导入现有项目

在本节中,我们将了解如何导入现有项目。 我们可以通过两种方式导入项目 -

  • 从现有来源导入
  • 从构建模型导入它。

目前,它支持Gradle和Maven构建工具。 要导入项目 -

  • 从现有源导航到文件→新建→项目。
  • 选择现有项目的目录,Maven的pom.xml或Gradle的构建脚本。
  • 单击“确定”按钮。
导入现有项目

项目格式

IntelliJ支持两种类型的项目格式,一种是directory-based ,另一种是directory-based file-based 。 基于目录的格式是较新的建议。 默认情况下,IntelliJ创建基于目录的项目格式。 您可以在创建新项目时选择项目格式。 在新项目窗口中,只需单击更多设置,如下图所示 -

项目格式

基于目录的项目格式

此格式有助于在项目中创建构思文件夹,并将所有配置文件保留在该文件夹中。 设置分组到xml文件中。 例如,它将创建misc.xml, modules.xml, workspace.xml等。 以下屏幕截图将帮助您了解其工作原理 -

基于目录的项目格式

基于文件的项目格式

它将使用..iprwpr扩展创建两个项目文件。 ipr文件将包含项目特定的设置,wpr文件将包含特定于工作区的设置。

基于文件的项目格式

要将基于文件的项目转换为基于目录的项目,请转到File → Save as a Directory-Based format

基于目录和基于文件的项目格式

与基于文件的项目格式相比,基于目录的项目格式将设置存储在具有有意义名称的单独文件夹中。 其他差异是 -

  • 相关设置存储在单个文件中,可以更轻松地以基于目录的项目格式进行管理。

  • 如果文件夹包含idea子文件夹,则IntelliJ会识别该项目。 因此,您没有明确选择ipr项目。

  • 基于目录的项目格式将设置分成多个文件,因此更容易选择要存储在版本控制系统中的特定类型的设置。

Intellij Idea - Deep Dive into Editor

编辑器是开发人员花费大部分时间的区域。 掌握编辑器是提高任何资源生产力的第一步。 本章讨论编辑器的可视元素,最常见的编辑器操作和提供lint检查的SonarLint插件。

编辑的视觉元素

IntelliJ有许多规定,包括视觉元素,旨在帮助开发人员浏览和理解编码的真实状态。

现在让我们通过不同的规定 -

天沟区

编辑器的装订区位于IDE的左侧,如下图所示 -

天沟区

Labels

我们现在将了解标签的工作原理。 上面的屏幕截图标有数字。 我们现在将看到数字必须显示的内容 -

  • 在这里,我们可以看到行号以及其他有用的选项。 如果您在课名和主要方法之前仔细观察,则会出现一个小的绿色三角形。 它提供了运行,调试和运行带覆盖的应用程序的选项。 只需点击三角形图标,它就会提供选项。

  • 您可以在第6行看到小加号。这是代码折叠功能。 如果您单击该图标,它将展开它。 代码折叠可以在类,方法,循环和其他块级别完成。

  • 在第11和14行,有2个箭头指向彼此。 标记表示方法的开始和结束位置。 如果单击任何箭头,则它将对该代码块执行折叠操作。 当采取某些行动时,天沟区域将显示各种符号; 例如,它将显示断点符号,Java注释。

状态栏

在编辑器窗口的底部,有一个状态栏,显示有关当前文件和项目状态的信息。

事件簿状态栏
  • 在第一图像中,16:1分别表示当前行号和列号。

  • 接下来是行分隔符,对于UNIX和mac OS,它是\ n,对于windows,它是\ r\n。

  • UTF-8表示文件编码。

  • 接下来是lock图标。 我们可以通过点击来切换文件的只读属性。

  • 最后,有一个男人的脸的象征。 它允许管理代码检查级别。

    • 当我们在编辑器中键入代码时,IntelliJ会动态检查代码并显示提示/建议。 我们可以从这里决定检查水平。 例如,我们可以完全禁用它或仅允许检查语法等。

    • 我们还可以从此处启用省电模式,这将禁用后台代码分析和其他后台作业。

  • 状态栏还显示有关项目操作的信息。 例如,第二个图像显示有关项目编译的信息。

划痕(Scratches)

IntelliJ提供临时编辑器。 您可以在不修改当前项目结构的情况下创建文本或代码段。 它提供两种类型的临时文件 -

划痕文件

它们功能齐全,可运行且可调试。 要创建临时文件 -

  • 转到File → New → Scratch文件。

  • 选择您选择的语言。

  • 它将在IntelliJ-Installation-Directory\config\scratches文件夹中创建一个文件。

划痕缓冲区

这仅用于创建任何文本。 要创建临时缓冲区 -

  • 按Ctrl + Shift + A或单击“搜索所有位置”图标

  • 它会弹出对话框。

  • 在该框中输入新的临时缓冲区文本,然后按Enter键。

  • 它将在编辑器窗口中打开临时缓冲区。

与临时文件一样, scratch buffers也存储在IntelliJ-Installation-Directory\config\scratches文件夹中。

滚动条(Scrollbar)

滚动条突出显示代码中的警告/错误消息/ TODO标记。 例如,从不使用sayHello()和sayGoodBye()方法; 因此,滚动条显示黄色标记。

滚动条

在第8行,有TODO注释,滚动条使用蓝色标记突出显示它。 使用红色标记突出显示错误。

编辑行动

在本节中,我们将讨论IntelliJ中的编辑器操作。

搜索和替换

要搜索当前文件中的文本 -

  • 在“编辑器”窗口中导航到该文件,然后按Ctrl + F.

  • 它将显示文本框,键入要在其中搜索的文本。

  • 您可以在此处提供各种选项 - 区分大小写,完全匹配,正则表达式等。

编辑行动

您可以在非常精细的级别执行搜索操作。 例如,搜索可以在项目,模块或目录级别完成 -

  • Ctrl+Shift+F组合键。

  • 将出现一个新窗口; 从这里,您可以选择适当的级别。

新窗户

要在当前文件中执行替换操作 -

  • Ctrl+R组合键。

  • 将出现一个对话框,在此处输入要替换的文本。

  • 此操作允许您替换单个匹配,所有匹配或跳过当前匹配。

替换单身

要在粒度级别执行替换操作 -

  • Shift+Ctrl+R组合键。

  • 它将允许您替换项目,模块,目录和其他范围中的文本。

列选择模式

要启用列模式选择,请在选择文本时按住Alt键。 要永久启用列选择模式,请选择Edit → Column selection mode

列选择

剪贴板历史

当我们复制任何文本时,它会转到剪贴板历史记录。 IntelliJ维护剪贴板历史记录。 要查看此历史记录,请Ctrl+Shift+V组合键。 您可以从此窗口中选择要粘贴的内容。

剪贴板历史

代码完成

IntelliJ可以code on the fly检查code on the fly并提供准确的代码完成。 例如,当我输入单词say - 它表示sayHello()sayGoodBye()方法。

代码完成

代码完成在使用类对象时建议类属性和类方法。

生成代码

IntelliJ提供了一种生成有用代码的方法,如构造函数,getter,setter,toString()方法,覆盖方法等。 按照以下步骤在“编辑器”窗口中生成右键单击。

  • 选择Generate选项。

  • 它将列出可以生成代码的方法。

生成选项

代码检查

我们已经看到IntelliJ识别语法错误,警告消息和TODO标记。 除此之外,它还建议代码改进,识别死代码,代码优化。 例如,在下面给出的代码中,flag的值始终为true。 因此, else部分永远不会被执行。

boolean flag = true; 
if (flag == true) { 
   System.out.println("Value of flag is true"); 
} else { 
   System.out.println("Value of flag is false"); 
}

IntelliJ识别出这一点并建议删除此代码块。

代码检查

比较文件和文件夹

请按照以下步骤比较文件和文件夹 -

  • 按住Ctrl键并从项目角度选择要比较的文件。

  • 右键单击它并选择Compare Files选项。

  • 它将打开比较窗口,其中突出显示更改。

您还可以将更改从一个文件应用到另一个文件。 如果您观察,有两个红色突出显示的箭头标记。 单击它们以应用其他文件中的更改。 按Ctrl+Z撤消更改。

同样,要比较文件夹,请从项目透视图而不是文件中选择文件夹。

比较文件

获得帮助

如果您轻松获得有关代码的详细信息,则非常有用 与方法描述一样,它的返回类型,参数类型和参数数量 - IntelliJ可以在Editor窗口本身提供这些细节。

内联文档

顾名思义,IntelliJ可以通过从代码中提取文档来访问文档。 如果您为代码提供Java Docs,那么IntelliJ可以显示有关它的帮助。 要访问内联文档,请单击方法名称并按Ctrl+Q组合键。

内联文档

查看定义

要查看定义,请将鼠标悬停在方法名称上,然后按Ctrl+Shift+I组合键。

查看定义

显示用法

要查看方法用法,请单击方法声明/定义,然后按Alt+Ctrl+F7组合键。

显示用法

查看参数

要查看方法参数,请键入方法名称,然后按Ctrl+P组合键。

查看参数

Linting Code

Linting是一个过程,其中lint工具分析源代码并报告与编码标准相关的潜在问题。 它有助于提高代码质量。 IntelliJ支持提示代码的SonarLint插件。

关于SonarLint

安装并启用SonarLint插件后,当您在“编辑器”窗口中打开文件时,它将自动开始分析代码。 它将在SonarLint面板中报告问题。 我们将在本节中讨论更多相关内容。

SonarLint支持流行的编程语言,如Java,JavaScript,PHP和Python。

安装 (Installation)

请按照以下步骤安装SonarLint -

  • here下载SonarLint。

  • 转到File → Settings → Select plugins

  • 单击“ Install plugin from disk按钮。

  • 按照屏幕安装完成安装过程。

屏幕安装

代码分析

安装并启用插件后,它将立即开始分析code on the fly 。 它将在SonarLint面板中报告问题。 请按照以下步骤查看当前文件的问题 -

  • 单击“当前文件”选项卡。

  • 它将报告诸如未使用的局部变量,未使用的类属性,消息记录等问题。

  • 要了解有关问题的更多信息,请单击SolarLint面板中的问题。

  • 在窗口的右侧,它将显示其严重性为Major,Minor等。

严重程度为主要

做一次性代码分析

如果您对即时代码分析不满意,那么您可以禁用它并在准备好代码后执行一次代码分析。 请按照以下步骤禁用即时代码分析 -

  • 转到File → Settings → Other Setting → SonarLint General设置

  • 从设置选项卡中取消选中Automatically Trigger Analysis复选框。

  • 单击Apply然后单击Ok按钮。

自动触发分析

Intellij Idea - Code Refactoring

在本章中,我们将了解代码重构及其在IntelliJ中的工作原理。 代码重构是重构代码而不改变其功能和可用性。 可以进行代码重构以提高代码可读性,性能或删除未使用/重复的功能。 IntelliJ为代码重构提供了很好的支持。 本章讨论各种代码重构操作。

Rename

重命名动作可用于重命名方法,其参数,类属性,局部变量等。 让我们在IntelliJ中创建以下类。

public class Employee {
   private String name;
   private String address;
   private int age;
   public Employee() {
      this("Jarvis", "Palo Alto", 35);
   }
   public Employee(String name, String address, int age) {
      this.name = name;
      this.address = address;
      this.age = age;
   }
   public String getName() {
      return name;
   }
   public void setName(String name) {
      this.name = name;
   }
   public String getAddress() {
      return address;
   }
   public void setAddress(String address) {
      this.address = address;
   }
   public int getAge() {
      return age;
   }
   public void setAge(int age) {
      this.age = age;
   }
   @Override
   public String toString() {
      return "Employee{" +
      "name='" + name + '\'' +
      ", address='" + address + '\'' +
      ", age=" + age +
      '}';
   }
   public static void main(String args[]) {
      Employee e = new Employee();
      System.out.println(e);
   }
}

现在,让我们将Employee类重命名为Person 。 此操作将在构造函数和main()方法中进行修改 -

  • 选择员工字

  • 转到Refactor → Rename命名并使用Person Refactor → Rename命名。

重命名动作

替换代码重复

这是强大的重构操作之一。 IntelliJ识别代码重复,并用适当的代码替换它。 让我们介绍代码重复并重构它。 在编辑器中键入以下代码 -

public class Employee {
   private String name;
   private String address;
   private int age;
   public Employee() {
      this("Jarvis", "Palo Alto", 35);
   }
   public Employee(String name, String address, int age) {
      this.name = name;
      this.address = address;
      this.age = age;
   }
   public void setData(String name, String address,  int age) {
      this.name = name;
      this.address = address;
      this.age = age;
   }
   public void showEmployeeDetail() {
      System.out.println("Name = " + name + ", Address = " + address + ", Age = " + age);
   }
   public static void main(String args[]) {
      Employee e = new Employee();
      e.showEmployeeDetail();
   }
} 

在此示例中,Employee(String name,String address, int age)构造函数和public void setData(String name,String address, int age)方法完全相同。 重构后,Employee(String name,String address,int age)构造函数被修改如下 -

public Employee(String name, String address, int age) {
 setData(name, address, age);
}

替换重复 -

  • 转到重构→查找和替换代码重复项。

  • 选择重构范围并按照屏幕上的步骤完成操作。

替换代码重复

复制重构

在本节中,我们将了解如何将一个类复制到另一个类。 让我们将Employee类复制到Person类。 我们可以将其复制到现有模块或新模块。 IntelliJ将根据它进行必要的更改。 按照以下步骤执行复制重构 -

  • 转到Refactor → Copy ,将打开对话框。

  • 输入新名称和目标包。

  • 单击确定按钮,它将完成所需。

复制课程

移动重构

移动重构类似于复制,但不是制作另一个副本,而是将代码移动到另一个包或将其作为另一个类的内部类。

按照以下步骤执行移动重构 -

  • 转到,重构→移动。

  • 将出现一个新窗口。

  • 根据您的选择选择其中一个选项,然后单击“重构”。

移动重构

安全删除

仅当在项目中的任何位置未引用对象时,“安全删除”操作才会删除对象。 此选项的目标可以是类,接口,方法,字段或参数。

让我们看看这一点。 在编辑器中键入以下代码 -

public class HelloWorld {
   static void sayHello() {
      System.out.println("Hello, World !!!");
   }
   public static void main(String[] args) {
      sayHello();
   }
}

请按照以下步骤执行安全删除操作 -

  • 选择sayHello()方法。

  • 右键单击它并选择Refactor → Safe Delete选项。

  • 正如使用sayHello()方法一样,它将显示错误,如下面的屏幕截图所示 -

安全删除操作

更改签名

该操作修改方法签名。 它可以更改方法名称,参数,类型,返回值等。 让我们从上面的例子中获取一个方法并改变它的签名。

请按照以下步骤执行“更改签名”操作 -

  • 选择方法。

  • 右键单击它并选择Refactor→Change signature action

  • 将出现一个新窗口,您可以在其中执行上述操作。

  • 在窗口的底部,它显示新签名的预览。

更改签名

类型迁移

类型迁移会更改符号的类型。 此符号可以是方法参数或类属性。 在执行所需操作之前,让我们考虑以下方法 -

static void sayHello(String name) {
   System.out.println(name);
}

请按照以下步骤执行类型迁移 -

  • 选择“字符串”数据类型。

  • 右键单击它并选择Refactor → Type migration

类型迁移
  • 在给定的文本框中输入所需的数据类型。

  • 选择范围并单击“重构”按钮。

Intellij Idea - Running Projects

IntelliJ提供了多种创建配置的方法。 本章讨论创建临时永久配置的选项。 它还讨论了在其他用户之间共享配置的方法。

创建临时配置

运行或调试Java类或测试用例时会创建临时配置。 请考虑以下步骤以了解其工作原理 -

  • 创建一个Java类。
  • 右键单击它并选择“运行”选项。
  • 第一次运行后,临时配置将添加到运行菜单中。
临时配置

创建永久配置

通过使用IntelliJ保存临时配置,可以将其转换为永久配置。 要保存配置,请单击“运行”菜单中的“ Save Configuration选项 -

永久配置

您还可以通过编辑来修改现有配置。

创建新配置

在本节中,我们将了解如何创建新配置。 请按照以下步骤创建新配置 -

  • 导航到“运行”→“编辑配置”。

  • 单击加号按钮添加新配置。

  • 从下拉列表中选择应用程序。

新配置
  • 它将创建未命名的配置。

  • 根据您的要求进行配置,然后单击“确定”按钮。

  • 可以从“运行”菜单访问此保存的配置以及其他配置。

共享配置

请按照以下步骤与他人共享配置 -

  • 导航到“ Run → Edit配置”。

  • 从左侧窗格中选择配置,然后单击“共享”复选框。

  • 它会将配置存储在磁盘上。

如果使用基于目录的格式,它将在runConfiguration文件夹下的单独文件中保存配置。 否则,它会将配置存储在.ipr文件中。

共享配置

运行配置

要运行具有特定配置的项目 -

  • 从“运行”菜单中选择配置。

  • 运行项目,如以下屏幕截图所示 -

运行配置

Intellij Idea - Build Tools

IntelliJ提供了一种构建和打包Java包的方法。 它支持Maven和Gradle等外部构建工具。 本章讨论这些构建工具。

创建Maven项目

按照以下步骤创建Maven项目 -

  • 导航到File → Project

  • 选择Maven选项,然后单击Next按钮。

Maven项目
  • 在新项目窗口中,将iowiki.com作为GroupId输入,将HelloWorld输入为ArtifactId。

  • 在New窗口中,它将打开pom.xml文件。

  • 我们需要为这个文件添加属性; 最终的pom.xml文件应如下所示 -

<?xml version = "1.0" encoding = "UTF-8"?>
<project xmlns = "http://maven.apache.org/POM/4.0.0"
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0  
      http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.tutorialspoing</groupId>
   <artifactId>HelloWorld</artifactId>
   <version>1.0-SNAPSHOT</version>
   <properties>
      <maven.compiler.source>1.7</maven.compiler.source>
      <maven.compiler.target>1.7</maven.compiler.target>
   </properties>
</project>

现在,让我们在Maven项目的src/main/java目录中创建一个Java类。 请按照以下步骤创建课程 -

  • 导航到src/main/java目录。

  • 右键单击它并选择New → Java Class

按照以下步骤使用Maven编译此类 -

  • 导航到“运行”→“编辑配置”。

  • 单击绿色加号图标,然后从下拉菜单中选择Maven选项。

  • 输入项目名称Maven-Package。

  • 提供包作为命令行。

  • 单击“确定”按钮。

命令行
  • 导航到“运行”并选择“ Maven-Package选项。

  • 它将开始构建包。 成功构建软件包后,您将看到以下结果 -

建筑套餐

创建Gradle项目

在本节中,我们将学习如何创建Gradle项目 -

  • 导航到File → Project然后选择Gradle。

  • 单击“下一步”按钮。

  • 在新项目窗口中,输入iowiki作为GroupId,输入HelloWorld作为ArtifactId。

  • 单击Next按钮,验证项目详细信息,然后单击Finish按钮。

  • 按照屏幕上的说明完成此过程。

完成按钮
  • 打开buildl.gradle文件并编写Hello任务,如上面的屏幕截图所示。

  • 要编译此任务,请导航到Run → Build-Gradle选项。

Intellij Idea - Unit Testing

单元测试在软件开发中起着重要作用。 IntelliJ支持各种单元测试框架,如JUnit,TestNG,Spock等等。 在本章中,我们将使用JUnit3。

创建单元测试

在本节中,我们将学习如何创建单元测试。 按照以下步骤创建测试 -

  • 选择Navigate → Test选项。

  • 将出现一个对话框,您必须选择“ Create New Test

  • 按照屏幕上的说明继续 -

intellij_idea-intellij_idea_quick_guide
  • 提供有关测试的详细信息,如测试库,类详细信息,setUp,tearDown方法等。

撕下方法
  • 单击“确定”按钮继续。

  • 将创建一个测试类。 最初它可能无法解析某些符号。 将光标导航到错误行,它将显示提示符号。

  • 从下拉菜单中选择适当的选项。 我们选择了Add library 'junit.jar!' to classpath Add library 'junit.jar!' to classpath选项 -

类路径选项

您可以根据业务需求在每个测试中添加逻辑。 为简单起见,我把它保持为空。

运行单元测试

按照以下步骤运行单元测试 -

  • 从编辑器窗口中选择单元测试类。

  • 导航到“运行”菜单,然后选择“运行”选项。

  • 将生成以下结果

运行选项。

Intellij Idea - Debugging

调试器使应用程序调试更容易。 使用调试器,我们可以在某一点停止程序的执行,检查变量,进入函数并做很多事情。 IntelliJ提供内置的Java调试器。

断点(Breakpoints)

断点允许在某个点停止程序执行。 可以通过将鼠标悬停在编辑器的装订线区域上并单击它来设置断点。

断点用红色圆圈符号表示。 考虑第3行设置的断点。

断点

请考虑以下步骤以了解有关断点如何工作的更多信息 -

  • 右键单击红色圆圈符号。

  • 选择More选项。

  • 要删除断点,只需单击相同的符号。

按照以下步骤启动调试器 -

  • 导航到“运行”菜单。
  • 选择“调试”选项。

踏入

在调试时,如果遇到函数并且选择了步骤操作,则调试器将在该函数的每个点停止程序执行,就好像为该函数启用了调试一样。

例如,当程序执行到达第9行时,如果我们选择步骤进入操作,那么它将停止执行sayGoodBye()函数中的每一行。

程序执行

走出去

Step out动作与Step in action完全相反。 例如,如果使用上述方案执行步出操作,则调试器将从sayGoodBye()方法返回并在第10行开始执行。

走出去

过来

Step over动作不会进入函数,而是跳转到下一行代码。 例如,如果您在第9行并执行步骤操作,那么它会将执行移至第10行。

跳过

简历程序

“恢复程序”操作将通过忽略所有断点继续执行程序。

断点

停止行动

Stop操作有助于停止调试器。

停止行动

聪明的步入

在调试时,我们有时可能会调用一行调用多个方法的代码。 在调试这些代码行时,调试器通常允许我们使用step into并引导我们完成所有子函数,然后返回到父函数。 但是,如果我们只想进入一个子功能呢? 通过Smart step-into,它允许我们选择要进入的功能。

现在,让我们使用以下代码行创建一个Java类 -

public class HelloWorld {
   public static void main(String[] args) {
      allFunctions();
   }
   static void allFunctions() {
      System.out.println(function1() + " " + function2() + " " + function3());
   }
   static String function1() {
      return "function1";
   }
   static String function2() {
      return "function2";
   }
   static String function3() {
      return "function3";
   }
}

在上面的代码中, allFunctions()调用了3个函数。 让我们在这个函数下设置断点。 按照以下步骤执行智能步骤 -

  • Go to run
  • Select smart step into.
  • 选择要运行的子功能。
儿童功能

检查变量

在调试期间,IntelliJ在Editor窗口本身中显示变量的值。 我们还可以在Debug窗口中查看相同的信息。

检查变量

评估表达

评估表达式允许动态评估表达式。 请按照以下步骤执行此操作 -

  • 在调试器中启动应用程序

  • 导航到Run-》Evaluate表达式。

  • 输入表达式。 在下面给出的例子中,变量'i'的当前值是0; 因此,表达式“i> 100”将评估为假

评估表达

Intellij Idea - Profiling

Profiler提供有关您的应用程序的见解,如CPU,内存和堆使用情况。 它还提供有关应用程序线程的详细信息。 本章讨论VisualVM工具在Java应用程序分析中的用法。 它可以分析CPU和堆等实体。

建议本教程的读者熟悉应用程序分析器概念。

介绍 (Introduction)

VisualVM是一个可视化工具,它集成了JDK工具并为您提供了强大的分析功能。 它允许您生成和分析堆数据,跟踪内存泄漏,监视垃圾收集器以及执行内存和CPU分析。

好处 (Benefits)

  • 在JVM上运行的本地和远程Java应用程序的可视界面。

  • 监视应用程序的内存使用情况和应用程序的运行时行为。

  • 监视应用程序线程

  • 分析不同应用程序的内存分配。

  • 线程转储 - 在遇到死锁和竞争条件时非常方便。

  • 堆转储 - 在分析堆内存分配时非常方便。

配置 (Configuration)

在本节中,我们将学习配置VisualVM所执行的步骤。 步骤如下 -

  • here下载。

  • 解压缩zip文件。

  • 导航到etc/visualvm.conf文件并在此文件中添加以下行 -

visualvm_jdkhome=<path of JDK>
  • 如果您的JDK安装在C:\Program Files\Java\jdk-9.0.1目录中,那么它应该如下所示 -

visualvm_jdkhome="C:\Program Files\Java\jdk-9.0.1"

监控应用

现在让我们看看如何监控应用程序。 考虑以下步骤来理解相同的 -

  • 双击visualvm.exe文件。
  • 从左侧窗格中选择应用程序。
  • 选择监视器选项卡。
监控应用

您将被定向到一个窗口,在该窗口中您将获得有关CPU,堆,类和线程的详细信息。 要具体使用,请将鼠标悬停在任何图表上。 我们可以在上面的截图中看到Heap的用法。

关于线程的见解

Java应用程序可以包含多个执行线程。 要了解有关线程的更多信息,请选择特定应用程序的“线程”选项卡。 它将提供有关线程的各种统计信息,例如活动线程数和守护程序线程数。 不同的线程状态是Running,Sleeping,Waiting,Park和Monitor。

洞察线程

抽样申请

VisualVM支持CPU,内存采样和内存泄漏检测。 要示例应用程序,请选择应用程序并选择示例选项卡 -

CPU采样

对于CPU采样,单击CPU按钮,如以下屏幕截图所示 -

记忆采样

内存分析

对于内存分析,单击Memory按钮,如以下屏幕截图所示 -

内存分析

内存泄漏

当应用程序在运行时,会慢慢使用程序未自动删除的对象填充堆,从而发生内存泄漏。

如果未删除程序未使用的对象,则它将保留在内存中,GC无法回收其空间。 如果应用程序中的字节数和实例数在程序中持续显着增加到占用所有空间,则可能表示存在内存泄漏。

分析应用程序

在本节中,我们将学习如何分析应用程序。 要分析应用程序,请从左窗格中选择应用程序,然后单击配置文件选项卡

CPU分析

要执行CPU分析,请单击CPU按钮,如下面的屏幕截图所示 -

CPU分析

内存分析

要执行CPU分析,请单击CPU按钮,如下面的屏幕截图所示 -

CPU内存分析

Intellij Idea - Version Control

IntelliJ支持各种版本控制系统,如Git,Subversion,Mercurial,CVS,GitHub和TFS。 您可以从IDE本身执行与版本控制相关的操作。

在本章中,我们将讨论Git和Subversion(以下简称SVN)。 我们假设读者熟悉Git和SVN工具及其术语。

Git

在本节中,我们将学习如何使用Git。

Clone

要克隆现有的Git存储库 -

  • 从Version Control-> Git导航到File-> New-> Project。

  • 输入存储库URL,父目录和目录名称。

  • 单击克隆按钮继续。

克隆存储库
  • 成功运行上述步骤后,将克隆存储库。

跟踪变化

Git将跟踪您在存储库中所做的更改。 让我们修改存储库中的任何文件,并将其与存储库进行比较。

  • 导航到VCS→Git→与最新存储库版本进行比较。

  • 上面的步骤将打开diff窗口。

  • 您可以看到右侧有一条带绿色背景颜色的新线条。

  • 当我们添加新内容时,Git以绿色显示它。 如果我们删除任何内容,那么它将以红色显示

跟踪变化

还原本地更改

请按照以下步骤放弃本地更改 -

  • 导航到VCS → Git → Revert选项。

  • 它会要求确认并删除您的更改。

还原更改

将文件添加到存储库

要将文件添加到存储库,请导航到VCS → Git → Add option 。 此操作类似于git add操作。

提交更改

Commit操作将创建本地提交。 它类似于git commit动作。 执行提交 -

  • 导航到VCS → Git → Commit File选项。

  • 选择要提交的文件。

  • 输入commit message并单击Commit按钮。

提交更改

将更改推送到远程存储库

Push操作将本地更改发送到远程存储库。 推动变革 -

  • 导航到VCS → Git → Push选项。

  • 将出现一个窗口。 在这里,您可以看到要推送的comitts。

  • 验证提交并单击“推送”按钮以发布更改。

推送更改

查看历史记录或日志

要显示历史记录,请导航至VCS → Git → Show history option 。 此操作类似于git log命令。 它将显示如下历史 -

查看历史记录或日志

获取更新

请按照以下步骤从存储库中获取更新 -

  • 导航到VCS → Git → Pull选项。

  • 根据您的要求选择选项。

  • 单击“拉”按钮。

获取更新

将现有项目添加到Git

在Git下添加现有项目 -

  • 导航到VCS → Import into Version Control → Create Git存储库。

  • 通过浏览目录选择项目。

  • 单击“确定”按钮。

现有项目

Subversion

在本节中,我们将了解Subversion如何在IntelliJ中工作。 让我们考虑一些重要的行动来理解这一点。

Checkout

结帐SVN存储库 -

  • File → New → Project from Version Control → Subversion.导航到File → New → Project from Version Control → Subversion.

  • 输入存储库URL。

  • 单击“ OK按钮。

查看

跟踪变化

SVN将跟踪您在存储库中所做的更改。 让我们修改存储库中的任何文件并将其与存储库进行比较 -

  • 导航到VCS-> Subversion->与最新存储库版本进行比较

  • 您可以看到右侧有新的线条,背景为绿色。

  • SVN以绿色背景显示,表示添加了新内容。 如果我们删除任何内容,那么它将以红色显示。

最新的存储库

还原本地更改

请按照以下步骤还原您所做的本地更改 -

  • 导航到VCS → Subversion → Revert选项。

  • 它会要求确认并删除您的更改。

删除您的更改

提交对远程存储库的更改

按照以下步骤提交远程存储库中的更改 -

  • 导航到VCS → Subversion → Commit Files选项。

  • 将出现一个新窗口。 在这里,您可以看到要提交到远程存储库的文件。

  • 验证文件并单击“提交”按钮以发布更改。

提交按钮

查看历史记录或日志

要显示历史记录,请导航至VCS → Subverion → Show history选项。 此选项类似于svn log命令。 它将显示如下历史 -

历史导航

更新操作

要获取最新更改,请导航到VCS → Subversion → Update File/Update Folder选项。

更新操作

将现有项目添加到Subversion

按照以下步骤在SVN下添加现有项目 -

  • 导航到VCS → Import into Version Control → Import into Subverion

  • 输入存储库URL并单击“导入”按钮 -

添加现有项目

Intellij Idea - Databases

IntelliJ提供了数据库工具,允许您从IDE本身执行与数据库相关的操作。 它支持所有主要数据库,如MySQL,Oracle,Postgress,SQL服务器等等。 在本章中,我们将讨论IntelliJ如何支持MySQL数据库。

我们假设读者熟悉数据库概念,并在系统上安装和配置所需的数据库工具。

创建数据库 (Create Database)

首先,我们将创建一个数据库- test_db 。 在命令提示符中执行以下命令 -

创建数据库

连接到数据库 (Connect to Database)

请按照以下步骤连接到数据库 -

  • 导航到View → Tool Windows → Database

  • 单击绿色加号图标,然后选择数据源→MySQL。

连接到数据库
  • 输入主机地址,然后单击“测试连接”按钮。

  • 如果一切顺利,那么它将显示成功,如上图所示。

  • 单击“确定”按钮以保存连接。

创建表格

请按照以下步骤创建新表 -

  • 右键单击数据库窗格并选择schema。

  • 选择New → Table选项

创建表
  • 将出现一个新窗口。 使用列,类型等定义表。

表与列
  • 单击“执行”按钮

  • 单击“执行”按钮

插入数据

请按照以下步骤插入数据 -

  • 从数据库窗格中选择表。
  • 它会在新窗口中打开表格。
  • 单击加号图标以插入新行。
  • 单击“提交”按钮以永久更改。
插入数据

检索数据

要检索数据,请双击数据库窗格中的student_table。 它将在新窗口中显示表数据。

要确保将数据插入表中,请打开命令提示符并执行以下命令 -

检索数据

Intellij Idea - Migrating from NetBeans

NetBeans是另一种流行的Java IDE。 如果您是NetBeans的当前用户并希望从它迁移到IntelliJ,那么这将是一个很好的起点。

本章讨论在IntelliJ中导入NetBeans项目,其术语等同于NetBeans,常用快捷方式和常见问题。

导入NetBeans项目

在本节中,我们将学习如何导入NetBeans项目。 请按照以下步骤导入项目 -

  • 导航到文件→新建→现有源项目

  • 选择NetBeans项目目录。

  • “导入项目”向导打开后,选择“从现有源创建项目”选项。

  • 按照屏幕上的说明继续操作。

IntelliJ vsNetBeans术语

下表比较了IntelliJ和NetBeans术语 -

的IntelliJ NetBeans的
ModuleProject
全球图书馆 全球图书馆
模块库 项目库
模块依赖 项目依赖
模块SDK 特定于项目的SDK

流行的捷径

IntelliJ是一个以键盘为中心的IDE。 它为大多数操作提供了快捷方式。 下表列出了一些重要的快捷方式 -

行动 捷径
运行Java程序 ctrl+shift+F10
组织进口 ctrl+alt+o
System.out.println() 输入sout并按ctrl + j
删除当前行 ctrl + y
Search ctrl + shift + f
生成getter和setter alt +插入
格式代码 ctrl + alt + l
注释掉代码 ctrl +/
去排队 ctrl + g
去宣言 ctrl + b
Renameshift+F6
移动线条 ctrl + shift + up/down

调试器快捷方式

下表列出了一些重要的调试器快捷方式 -

调试动作 捷径
调试程序 Shift + F9
选择配置和调试 Shift+Alt+F9
过来 F8
踏入 F7
聪明的步入 Shift + F7
走出去 Shift + F8
强行退一步 Shift+Alt+F8
强行进入 Shift+Alt+F7
简历程序 F9
评估表达 Alt+F8
切换断点 Ctrl+F8
查看断点 Ctrl+Shift+F8

常见问题和提示

在本节中,我们将介绍一些经常回答的问题和提示。 常见问题和提示如下 -

我可以在IntelliJ IDEA中使用NetBeans密钥绑定吗?

  • 导航到文件→设置,然后选择键盘映射。

  • 从下拉框中选择NetBeans

下拉框

IntelliJ IDEA中的本地历史记录与NetBeans中的本地历史记录不同吗?

IntelliJ IDEA中的本地历史通常更详细。 无论您对目录,文件,类,方法或字段或代码块执行什么操作都会反映在您的本地历史记录中。 本地历史记录还包括VCS操作。

我可以在IntelliJ IDEA中启用“保存时编译”吗?

  • 导航到文件→设置→构建,执行,部署→编译器
  • 选择“自动构建项目”选项。
  • 单击“确定”按钮。
自动构建项目

我可以在IntelliJ IDEA中使用NetBeans插件吗?

你不能。

是否可以使用IntelliJ IDEA构建NetBeans RCP应用程序?

有可能的; 但是,您将无法获得与NetBeans相同的支持(向导,菜单操作等)。 有关详细信息,请访问this.

Intellij Idea - Migrating from Eclipse

Eclipse是另一种流行的Java IDE。 如果您是Eclipse的当前用户并希望从它迁移到IntelliJ,那么这是一个很好的起点。

本章讨论如何在IntelliJ中导入Eclipse项目,其术语等同于Eclipse,流行的快捷方式和常见问题。

导入现有项目

在本节中,我们将讨论如何导入现有项目。 请按照以下步骤导入项目 -

  • 导航到文件→新建→现有源项目。

  • 选择NetBeans项目目录。

  • “导入项目”向导打开后,选择“从现有源创建项目”选项。

  • 按照屏幕上的说明继续操作。

IntelliJ vsEclipse术语

下表比较了IntelliJ和NetBeans术语 -

的IntelliJ 日食
ProjectWorkspace
ModuleProject
FacetFacet
LibraryLibrary
SDKJRE
路径变量 Classpath变量

流行的捷径

IntelliJ是一个以键盘为中心的IDE。 它为大多数操作提供了快捷方式。 下表列出了一些流行的快捷方式 -

行动 捷径
运行java程序 ctrl+shift+F10
组织进口 ctrl+alt+o
System.out.println() 输入sout并按ctrj + j
删除当前行 ctrl + y
Search ctrl + shift + f
生成getter和setter alt +插入
格式代码 ctrl + alt + l
注释掉代码 ctrl +/
去排队 ctrl + g
去宣言 ctrl + b
Renameshift+F6
移动线条 ctrl + shift + up/down

调试器快捷方式

下表列出了常用的调试器快捷方式 -

调试动作 捷径
调试程序 Shift + F9
选择配置和调试 Shift+Alt+F9
过来 F8
踏入 F7
聪明的步入 Shift + F7
走出去 Shift + F8
强行退一步 Shift+Alt+F8
强行进入 Shift+Alt+F7
简历程序 F9
评估表达 Alt+F8
切换断点 Ctrl+F8
查看断点 Ctrl+Shift+F8

常见问题和提示

在本节中,我们将看到一些经常回答的问题和提示。 常见问题和提示如下 -

使用Eclipse编译器

虽然Eclipse使用自己的编译器,但IntelliJ IDEA使用与项目JDK捆绑在一起的javac编译器。 如果要使用Eclipse编译器 -

  • 导航到File → Settings → Build, Execution, Deployment → Compiler → Java Compiler

  • 从用户编译器下拉列表中选择所需的编译器。

Eclipse编译器

Eclipse Keymap

对于不想学习新快捷方式的Eclipse用户,IntelliJ IDEA提供了与其快捷方式非常相似的Eclipse键盘映射 -

  • 导航到文件→设置→键映射选项。
  • 从Keymap下拉列表中选择Eclipse。
Eclipse Keymap

代码格式

要导入Eclipse格式化程序设置 -

  • 导航到File → Settings → Editor → Code Style → Java

  • 选择Eclipse XML配置文件。

Eclipse格式化程序设置

使用构建工具

与Eclipse一样,IntelliJ不提供用于编辑Maven/Gradle配置文件的可视化表单。

导入/创建Maven/Gradle项目后,您可以直接在文本编辑器中编辑其pom.xml/build.gradle文件。

↑回到顶部↑
WIKI教程 @2018