一IntelliJ IDEA 介绍
IntelliJ IDEA是来自捷克的Jetbrains公司开发的Java开发工具(完爆Eclipse/MyEclipse)。有旗舰版和社区版两大版本,相对社区版而言旗舰版的功能更加丰富。官网提供了两个版本之间差异的详细比较。擅长企业级应用、移动应用以及Web应用开发。
支持MacOS,Windows7+,Linux(Ubuntu14)三大主流操系统,支持主流技术(Maven,Git,Tomcat…)和框架(Spring,SpringBoot,SpringCloud…),同时支持Scala,Groovy等其他基于JVM的编程语言。
通过插件可以支持Python、Kotlin,PHP等编程语言以及数据库访问等等,还有日常开发中常用的GitHhub,MarkDown…诸多你想要的好用的工具。
想了解更多信息,可以参考官网信息:http://www.jetbrains.com/idea/
官网帮助文档 http://www.jetbrains.com/idea/documentation/
有些内容需要翻墙…
为了在日常开发中使用IntelliJ IDEA更加顺利,这里列出来必备的硬件以及系统要求。
硬件: Intel i7+16/32G+256/512SSD+1070GTX
软件:Windows7+/Linux(Ubuntu14.04)/MacOS10.10+
三大主流操作系统的下载地址
MacOS: https://download.jetbrains.com/idea/ideaIU-2017.1.3.dmg
Windows: https://download.jetbrains.8686c.com/idea/ideaIU-2017.2.1.exe
Linux:https://download.jetbrains.8686c.com/idea/ideaIU-2017.1.4.tar.gz
根据地址将这些地址直接复制到迅雷就可以下载了,MacOS下载演示如下图:
##二 MacOS安装IntelliJ IDEA 2017
1 双击下载完的安装程序
2 拖放安装程序
3 欢迎页说明
启动IntelliJ IDEA后会出现如下图的欢迎页面
Import Project 可以支持导入非IDEA项目(例如Eclipse),导入时会自动创建IDEA项目。
##三 IDEA的破解
如果你想用旗舰版而又不想付费使用的话,可以使用一个激活地址在线激活IDEA,甚至可以激活Jetbrains公司的所有产品,亲测的有PhpStorm,WebStorm,Pychram,DataGrip。
激活地址为:http://idea.iteblog.com/key.php
激活方法如下:
1 选择激活菜单
2 输入激活地址激活
3 激活信息
但是为了软件行业的健康发展还是倡导使用付费的形式,这样更有利于大家的发展。
##四 Project和Module的区别
在 IntelliJ IDEA 中Project是最顶级的结构单元,然后就是Module,一个Project可以有多个Module。
目前,主流的大型项目结构基本都是多Module的结构,这类项目一般是按功能划分的,比如:emall-core-dao、emall-core-message、emall-core-search、emall-core-orm、emall-serivce-login、emall-service-shoppingcart和 emall-service-order、emall-service-image 等等,模块之间彼此可以相互依赖。通过这些Module的命名可以看出,它们都是处于同一个项目中的模块,彼此之间是有着不可分割的业务关系的。
project和module的本质:
##五 使用IDEA创建多模块的项目
###5.1 创建父工程
1 创建一个新项目
2 配置JDK8u133
说明:之前已经在MacOS上安装过JDK8u133,并且已经集成在IDEA中,这里截图只是说明集成的方法。
创建一个新的JDK
选择JDK8的默认安装路径
3 创建Maven父工程
4 设置maven项目坐标三要素
5 配置项目和模块名称以及路径
6 项目概览
需要说明的是父工程中只需要pom.xml以及IDEA工程需要的配置文件: .idea文件夹和springframework.iml即可。删除src文件夹,如下图所示
###5.2 创建子模块
1 创建子模块
2 设置子模块的骨架类型(不选)
3 设置子模块artifactid
4 设置子模块的module info
5 父工程子模块概览
##六 IDEA常用菜单功能概览
###6.1 IntelliJ IDEA
该菜单主要介绍了IDEA的更新、首选项以及版本信息(包括JDK)
###6.2 File
该菜单是项目常用的菜单,用于project,module和各种应用场景中需要的文件创建以及项目的管理(设置、关闭)等等。
如果在开发过程中遇到意外的情况,可以尝试清除缓存并重启
例如在删除本地仓库后引入spring框架的jar包后,刷新maven依然无法引入,如下图:
清除缓存并重启
解决问题:
IDEA默认隐藏Tool Bar和Tool Button,为了更直观的开发,开启这俩。开启后的效果如下图:
###6.3 Edit
Edit主要用于文件编辑时的各种常用操作,例如复制、粘贴、撤销、查找、替换、查找引用(方法、属性等等)等等一些常用的功能。
不同于Eclipse的是IDEA的文件是自动保存并且将历史记录存于本地内存中,如果不退出编辑器,会看到更改历史记录。
###6.4 Build
IDEA的项目和模块的编译可以通过Build菜单来实现
而实时编译默认是不开启的,不过如果你的机器性能OK,可以在这里设置自动开启。
##6.5 Project Structure
Project Sturcture,可以在选中项目之后通过快捷键cmd ; 来进行设置
主要包含项目名称,JDK设置,语言级别,以及编译输出路径
以及模块的相关配置(例如模块打包,源码路径、资源路径的确认)
模块设置,一目了然
需要指出的是:Project SDK和Project Language Level的版本保持一致(这里是JDK8),各个Module的JDK可以设置成不同的版本。
为了演示Project Sturcture的余下菜单,这里创建一个springframwork-mvc的模块。
先在父pom.xml中引入IOC和AOP的模块
想看懂需要对Maven和Spring框架有一定的了解
<?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.timemachine</groupId>
<artifactId>springframework</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<modules>
<module>springframework-ioc</module>
</modules>
<properties>
<!-- 预防各种情况可能的乱码-->
<!-- 文件拷贝时的编码 -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- 编译时的编码 -->
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
<!--定义引用第三方框架的版本信息,便于统一管理-->
<springframework.version>4.3.8.RELEASE</springframework.version>
</properties>
<dependencies>
<!-- Spring框架的其他技术(例如MVC,AOP,JDBC) -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>${springframework.version}</version>
</dependency>
<!-- spring aop -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${springframework.version}</version>
</dependency>
</dependencies>
</project>
接下来创建一个新的模块:springframework-mvc
选择web app的archetype
设置ArtifactId
Maven Archtype Web App 预览
设置模块名称
maven自动下载所需组件
完整项目预览
细心的同学会发现springframwork-mvc模块中缺少src/main/java,src/test/java,src/test/resource,以及现有的src/main/resource和之前创建的springframework-ioc模块图标的颜色不一样。
这里可以通过Project Structure菜单的module设置来添加所需的目录以及设置。
Factes主要是确认模块的源码、资源以及web应用的根目录
Artifacts主要是打包的相关设置,例如打包名称以及输出路径等等
##七 IDEA Perferences
快捷键 commd ,
###7.1 首选项概览
首选项中包含了项目开发中经常用到的各种个性化设置(主题,字体、编码)以及各种工具的集成(Git、Maven、Tomcat),还有强大的插件(既可以本地安装,又可以在线安装)以及各种轻量级的工具(ssh client,database…)
###7.2 主题修改
选择Darcula主题,看起来像个极客的主题。
还有一些设置,可以自行尝试。
###7.3 编码设置
搜索编码设置,将其改为UTF-8
修改IDEA的idea.vmoptions设置
找到IDEA的idea.vmoptions的路径
添加文件的编码设置
改完这些编码,理论上在开发过程中就不会出现各种乱码现象了。
##八 IDEA常用快捷键(MacOS版)