美文网首页java jvm程序员
IDEA开发工具(更新中)

IDEA开发工具(更新中)

作者: guodd369 | 来源:发表于2017-11-16 08:12 被阅读263次
    网络图片

    前言:IntelliJ IDEA

    如果说IntelliJ IDEA是一款现代化智能开发工具的话,Eclipse则称得上是石器时代的东西了。其实笔者也是一枚从Eclipse转IDEA的探索者,随着近期的不断开发实践和调试,逐步体会到这款智能IDE带来的巨大开发便利,在强大的插件功能支持下,诸如对Git和Maven的支持简直让人停不下来,各种代码提示,包括JS更是手到擒来,最终不得不被这款神奇的IDE所折服。为了让身边更多的小伙伴参与进来,决定写下这篇文章,与君共享。经过前期的不断练习,后端开发之前使用的是eclipse和STS,注意eclipse中使用时快捷键失效的(禁用搜狗输入法的快捷键)。但是后期开发过程中我会选择idea作为开发工具使用。Eclipse通常用于实际项目的开发,STS用于Spring Boot和Spring Cloud的项目开发和进行框架的搭建,IDEA用于练习相应的新技术(JDK8JDK9)。如果想获得更多软件工具可以查看开发工具文章。

    高级传送门:IDEA 终极版下载地址

    激活方法: 安装完成后选择License 输入http://intellij.mandroid.cn

    更多激活方法可以参考JetBrains破解文章。

    正文:IntelliJ IDEA 使用教程

    1. IDEA VS Eclipse 核心术语比较

    由下图可见:两者最大的转变就在于工作空间概念的转变,并且在IDEA当中,Project和 Module是作为两个不同的概念,对项目结构是重要意义的,这也恰恰是许多IDEA初学者觉得困扰的地方。 图-01
    1.1 为什么要取消工作空间?

    答: 简单来说,IDEA不需要设置工作空间,因为每一个Project都具备一个工作空间!!对于每一个IDEA的项目工程(Project)而言,它的每一个子模块(Module)都可以使用独立的JDK和MAVEN。这对于传统项目迈向新项目的重构添加了极大的便利性,这种多元化的灵活性正是Eclipse所缺失的,因为开始Eclipse在初次使用时已经绑死了工作空间。

    1.2 此外,很多新手都会问,为什么IDEA里面的子工程要称为Module?

    答:其实就是模块化的概念,作为聚合工程亦或普通的根目录,它称之为Project,而下面的子工程称为模块,每一个子模块之间可以相关联,也可以没有任何关联。

    2. 当前项目配置VS默认配置

    2.1 为什么有了当前项目配置,还需要默认配置呢?

    答:因为IDEA没有工作空间的概念,所以每个新项目(Project)都需要设置自己的JDK和MAVEN等相关配置,这样虽然提高了灵活性,但是却要为每个新项目都要重新配置,这显然不符合我们的预期。在这个背景下,默认配置给予当前项目配置提供了Default选项,问题自然就迎刃而解了。

    2.2 初始化步骤

    打开默认配置:顶部导航栏 -> File -> Other Settings -> Default Settings /ProjectStructs
    打开当前配置:顶部导航栏 -> File -> Settings / ProjectStructs

    示例: 图-02

    3. 全局JDK和编码(默认配置)

    具体步骤:顶部工具栏 File ->Other Settins -> Default Project Structure -> SDKs -> JDK
    具体步骤:顶部工具栏 File ->Other Settins -> Default Settings->editor->file encodings把transparent native-to-ascll conversion勾选上就行了。

    示例: 根据下图步骤设置JDK目录,最后点击OK保存。 图-03

    4. 全局Maven(默认配置)

    下载配置maven

    下载对应的版本
    推荐一:阿里云的镜像站(首推,新站,速度暴快)
    <!—1.配置jar包的仓库地址-->
    <localRepository>D:/mavenrepository</localRepository>
    <!—2.配置jar包的下载地址-->
    <mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url>       
          <mirrorOf>central</mirrorOf>        
    </mirror>
    

    推荐二:spring-boot和spring-cloud等版本比较新,所以目前国内的一些仓库还没有新版本的jar

    <mirror>
          <id>spring-milestones</id>
          <name>Spring Milestones</name>
          <url>https://repo.spring.io/libs-milestone</url>
          <mirrorOf>central</mirrorOf>
    </mirror>
    

    注意:Setting.xml文件镜像地址:通常将其复制出来一份到mavenRepository目录下。(方便版本更换)
    Jar包的下载地址01
    Jar包的下载地址02
    解决不能下载到的jar包问题?

    mvn install:install-file -Dfile=message-text-20160607.jar -DgroupId=com.taobao.sdk -DartifactId=message-text -Dversion=1.0 -Dpackaging=jar
    <dependency>
            <groupId>com.taobao.sdk</groupId>
            <artifactId>message-text</artifactId>
            <version>20160607</version>
    </dependency>
    

    相关插件?

    在pom.xml中加入插件可以跳过单元测试:
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.5</version>
        <configuration>
        <skipTests>true</skipTests>
        </configuration>
     </plugin>
    孙宇提供的:
    <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
            <!-- 跳过单元测试 -->
            <skip>true</skip>
            <forkMode>once</forkMode>
            <argLine>-Dfile.encoding=UTF-8</argLine>
            </configuration>
    </plugin>
    在pom.xml中加入插件可以不需要创建web.xml测试:
    <build>
      <plugins>
       <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.6</version>
        <configuration>
         <failOnMissingWebXml>false</failOnMissingWebXml>
        </configuration>
       </plugin>
    </plugins>
    </build>
    

    IDEA配置步骤:顶部工具栏 File ->Other Settings -> Default Settings -> Build & Tools -> Maven

    示例: 理论上只要配置了Maven主目录即可,实际开发推荐采用User Settins file。 图-04

    5. 版本控制Git/Svn (默认配置)

    命令:svn upgrade
    具体步骤:顶部工具栏 File ->Other Settings -> Default Settings -> Version Control -> Git

    示例: IDEA默认集成了对Git/Svn的支持 直接设置执行程序,右边Test提示成功即可。 图-05 部分小伙伴反馈说无法找到svn.exe,解决方法:重装SVN,配置项重新选择command line client tools 即可。 图-05 IDEA配置 SVN
    SVN提交时忽略部分文件

    6. 自动导包和智能移除 (默认配置)

    具体步骤:顶部工具栏 File ->Other Settings -> Default Settings -> Auto Import 图-06

    说明: 在网上看到很多人在提问IDEA为什么不能优化导包而Eclipse可以,所以特意抽出来跟大家分享IDEA如何优化导包。

    7. Tomcat Server(当前项目配置)

    很多小伙伴刚开始都找不到Tomcat的配置,其实很简单,Tomcat或者Jetty这些都是部署的容器,自然会联想到Deployment ,打开部署配置,可以看到应用服务器的配置。
    配置Tomcat方法: File -> Settings -> Deployment -> Application Servers -> Tomcat Server
    具体配置方法,如下图:

    图-07

    IDEA 必备小技能

    为了提升开发效率,撸主贴心为大家准备以下实用指数五颗星的小技巧:

    8. 自动编译

    具体步骤:顶部工具栏 File ->Other Settings -> Default Settings -> Auto Import

    说明:开启自动编译之后,结合Ctrl+Shift+F9 会有热更新效果。 图-08
    自动编译(Runtime)
    具体步骤: 敲击 Ctrl + Shift + Alt + / 然后进入Registry ,找到compiler.automake.allow.when.app.running ,然后勾选上。 图-09 图-10

    9. 取消大小写敏感

    具体步骤:
    File | Settings | Editor | General | Code Completion Case | Sensitive Completion = None

    取消大小敏感,在编写代码的时候,代码的自动提示将更加全面和丰富。 图-11

    10. 调整字体类型和字体大小和主题

    默认的白色背景和细小的字体会影响大家的编码体验,这里特意提供了调整代码窗的快捷配置。打开配置,搜索Font,然后再Font可以调整字体类型,Size可以调整字体大小,如图: 图-12

    11. 将快捷键设置为跟Eclipse一样

    很多人可能并不习惯IDEA的快捷键,为了方便,这里我们将快捷键设置为跟 Eclipse一样。

    具体步骤: File -> Settings -> Keymap - > 选择Eclipse 图-13

    12. 打开常用工具栏

    具体步骤:顶部导航栏 - View -> 勾选 Toolbar & Tool Buttons

    如下图所示: 图-14

    13. 打开Maven神器(强烈推荐!)

    具体步骤:右侧直接点击 Maven Project 管理插件 ,记得先打开常用工具栏,详见8.3。

    如下图所示: 还在Eclipse使用Update命令苦苦挣扎的童鞋,请火速尝试此款插件,能给你带来前所未有的愉快感!! 图-15

    14. 懒人必备快捷键

    1. 快捷键的配置,习惯了eclipse快捷键设置。(completion、close)
      File->Settings-> Keymap-> 搜索completion -> 给Basic添加快捷键为Alt+/。
      File->Settings-> Keymap-> 搜索close-> 添加快捷键为Ctrl+W。
      File->Settings-> Keymap-> 搜索Reformat Code-> 添加快捷键为Ctrl+Shift+F。

    2. 快捷键的配置,习惯了Navicat Premium数据库管理工具的使用(open console、execute)
      File->Settings-> Keymap-> 搜索open console-> 添加快捷键为Ctrl+Q。
      File->Settings-> Keymap-> 搜索execute-> 添加快捷键为Ctrl+R。

    3. 按【鼠标中键】快速打开智能提示,取代alt+enter 。
      File->Settings-> Keymap-> 搜索 Show Intention Actions -> 添加快捷键为鼠标中键。

    4. 按【F2】快速修改文件名,告别双手操作。
      File->Settings-> Keymap-> 搜索 Rename -> 将快捷键设置为F2 。

    5. 按【F3】直接打开文件所在目录,浏览一步到位。
      File->Settings-> Keymap-> 搜索 Show In Explorer -> 将快捷键设置为F3 。

    6. Ctrl+ E 来找到最近访问的文件和Ctrl+ Shift + E 来访问最近编辑的文件

    7. Ctrl+ F 进行相应的搜索
      File->Settings-> Keymap-> 搜索 find -> 将快捷键设置为Ctrl+ F

    15. 重度强迫症患者

    1.取消大小写敏感,让自动完成更齐全!

    File->Settings ->Editor -> General->Code Completion Case->Sensitive Completion ->None。

    2.自动隐藏注释,让源码阅读更为清爽!

    File -> Settings -> Editor -> General -> Code Folding -> Documentation comments 勾选。

    如何想快速一键打开全部注释,则单击鼠标右键,选择Folding -> Expand Doc comments 。

    1. Maven自动下载源码包,告别反编译,直接上源码注释!!

    File -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven -> Importing

    将Automatically Download 的 Source 勾上。

    IDEA十问十答

    (1)如何打开本地工程/已存在的工程?
    答:点击File -> Open 打开 工程文件夹即可,注意先配置好JDK、Maven等基础配置。
    (2)IDEA如何删除项目工程?
    答:问这个问题的Coder真的好可爱啊哈哈,很肯定的回答你,不需要删,点击File-> Close Project 即可快速关闭当前项目; 示例:

    什么?你还是想要干掉整个目录?那也阔以,右键Show In Explorer ,删掉文件夹即可。不过笔者建议还是直接Close关掉就好啦,万一以后用得上呢,你说呢? 图-16
    (3)如何在单个窗口打开多个Maven工程啊?
    答:随便新建一个文件夹,然后将工程都扔进去,使用IDEA打开这个文件夹。
    (4)如何为当前项目工程添加多个模块啊?
    答: 对着工程右键 -> 选择New -> Module -> 通常选择Spring Initializr ,如图: 图-17 图-18

    Intellij IDEA 一些不为人知的技巧

    无处不在的跳转

    1. 项目直接的跳转(next project window、previous project window)
    2. 文件直接的跳转(Ctrl+E)
    3. 浏览修改位置的跳转
    4. 书签标记的跳转(bookmarks)
    5. 收藏位置和文件(add to favorites)

    精准搜索

    1. 精准搜索类()
    2. 精准搜索文件()
    3. 精准搜索符号,即搜索属性、函数()
    4. 精准搜索全局字符串()

    代码小助手

    1. 列操作()
    2. live template(常用设置:main、psfi、psfs、pi、ps)
    3. postfix(for、sout、field、return、nn)
    4. alter+enter(自动创建函数、list replace、字符串format或build、实现接口、单词拼写、导包)

    编写高质量代码

    1. 重构(变量重构、方法重构)
    2. 抽取(抽取变量、抽取静态变量、抽取成员方法,抽取方法参数、抽取函数)

    寻找修改轨迹

    1. git的集成(annotate、移动所以改动之处previous change)
    2. local history

    关联一切

    1. spring的关联
    2. 关联数据库

    调试程序

    1. 断点调试(添加断点、单步运行F8、F9、查看所以断点、禁止所以断点、条件断点、表达式求值)

    run anywhere if you can

    文件操作

    1. 在当前文件夹同一级目录下面新建一个文件(Ctrl+Alt+Ins)
    2. 复制当前文件(Ctrl+Shift+Alt+t)
    3. 复制当前文件(Shift+Alt+v)

    文本操作

    1. 复制简单文件名
    2. 复制完整路径文件名
    3. 多文本复制(Shift+Ctrl+v),访问历史粘贴板。

    结构图

    1. 查看当前field、method大纲。(Ctrl+o)
    2. 查看maven依赖图和类图。(Ctrl+Alt+Shift+u)
    3. 查看类继承结构,方法调用层次。

    Language Injection

    大家都知道在 Java 的 String 中编辑有 JSON 的话有多麻烦,各种转义真是让人疯狂,在 Intellij IDEA 中,我们可以直接使用 Intellij IDEA 的 Language Injection 的功能(Alt + Enter)将一个字符串标记为 JSON,就可以非常方便地编写 JSON 了,再也不用担心转义的问题了。tongs

    Rest Client

    Intellij IDEA 里面内置了一个 Rest Client,大家可以通过 Ctrl+ Shift + A,然后搜索 Rest Client 来找到或者在菜单栏中打开。等价于我们通常使用的postman接口调试工具。

    粘贴版历史

    如果使用过 Mac 里面的 Alfred 的话,可能大家早就习惯了 Alfred 的粘贴板历史的能力,真是复制粘贴的神器啊。其实 Intellij IDEA 里面也提供了这样的能力,我们可以直接通过 Ctrl+ Shift + V 来进行访问历史粘贴板。

    类结构图

    可以查看类图结构


    图-19

    总结

    插件配置

    Translation

    是一个翻译插件,支持中英互译、单词朗读。需要有有道的账号

    Alibaba Java Coding Guidelines plugin support

    代码规范检查插件

    Lombok plugin

    代码简洁之道中提到的插件,可以简写代码。

    Background Image Plus

    设置自己IDE的背景图片。

    emacsIdea

    字符跳转插件(Atrl+J)

    vim

    多窗口编辑

    stackoverflow

    stackoverflow,不需要去浏览器中查找,只要右键就可以!

    Gsonformat

    可根据json数据快速生成java实体类(alt+s)。

    Gitee

    提交开源代码到码云上。

    mybatisx

    MybatisX 辅助 idea 快速开发插件,为效率而生。

    相关文章

      网友评论

        本文标题:IDEA开发工具(更新中)

        本文链接:https://www.haomeiwen.com/subject/qjbkvxtx.html