# IntelliJ IDEA
- 下载地址 (opens new window)
- IDEA中的项目结构
# 快捷键
psvm //快速生成main()方法;
sout //快速生成输出语句;
Ctrl+/ //单行注释,再来一次就是取消
Ctrl+Shift+/ //多行注释,再来一次就是取消
/** + enter //方法或者类说明注释,自动带参数和返回值
Ctrl+Alt+L //格式化
Ctrl+Alt+V //自动补全等号左边
Ctrl+Alt+T //添加包裹语句 例如:try catch
Alt+Insert //快速生成构造函数和私有成员的get、set方法、重写方法、meven添加依赖和插件
Ctrl+Shift+Alt+S //查看项目结构
Alt+Shift+R //重命名 通过此方式重命名类或变量、方法,在被引用处也会相应变化
Double Shift //随处搜索
Alt+F7 //定位方法、函数、变量在哪个类中被引用
Ctrl+B //转到定义
F3 //转到定义
F6 //逐步调试
F8 //执行并跳出方法
# 常用设置
# 创建空项目
- New Project
- Empty Project
- 把送的 这个模块干掉
- Project Structure -> Module 添加新模块
# 文件添加copyright
- 在idea中找到settings->Editor->copyright->copyright profiles,然后点击+,输入名字,在copyright text中输入模板,然后点击右下角apply
项目名称:$project.name
文件名称:$file.fileName
Date:$today
Mail:303258100@qq.com
Author:Sylone
- 在settings->Editor->copyright中default project copyright选择1中的copyright名字,点击右上方+ 添加scope,scope列选择project file,然后点击右下角apply
- 此时在新建项目时就会自动加入copyright
- 可以右击目录或者project file选择update copyright手动加入coperight
- 可以通过在project file中使用alt+insert快捷键选择copyright生成版权信息
# 第一次在包下建立子包时候无法创建
Show Options Menu下有一个Compacket Middle Packages将它关闭即可
# 修改文件的模板
例如:web.xml文件的模板: setting -> Editor -> File and Code Templates -> Other -> Web
# IDEA工具栏添加按钮
以项目结构Project Structure 为例添加按钮
- 打开设置进入 Menus and Toolbars
- 右侧点开 Main Toolbar
- 找一行虚线,点加号,Add Action
- 搜索Project Structure
- 点击 确定
# 全局配置
- Maven
- File Encodings
# 配置SSH
# 配置Docker
# 配置FTP
# 集成Tomcat
# 配置Tomcat
- Run-> Edit Configurations
- Tomcat中默认集成了jsp和Serverlet
# 创建web项目
- Template:Web Application
- Application Server:选择已安装的Tomcat
- JDK:选择已安装的版本
- Java EE:选择Java EE版本
# 对tomcat的设置和更改
- 打开Tomcat配置
- 虚拟目录的设置
- 热更新配置,对Tomcat进行相应的设置,这样的话修改的jsp界面什么的东西才可以及时的显示出来
- On Update action 当代码改变的时候,需要IDEA做什么(一般选Update classes and resources)
- Update resources:如果更新资源文件(.jsp,.xml等,不包括java文件),就会立刻生效
- Update classes and resources:如果更新java文件和资源文件的,就会立刻生效
- Redploy:重新部署,只是把原来的war删掉,不重启服务器
- Restart:重启服务器
- On Frame deactivation:当失去焦点(比如你最小化了IDEA窗口),需要IDEA做什么
- Do nothing:不做任何事(一般推荐这个,因为失去焦点的几率太大)
- Update resources:失去焦点后,修改的resources文件都会立刻生效
- Update classes and resources:失去焦点后,修改的java,resources文件都会立刻生效
- On Update action 当代码改变的时候,需要IDEA做什么(一般选Update classes and resources)
注意
Update classes and resources:
在运行模式下,修改java文件时不会立刻生效的;而debug模式下,修改java文件时可以立刻生效的。当然,两种运行模式下,修改resources资源文件都是可以立刻生效的。
# Tomcat项目目录
- Idea集成tomcat之后,以后发布的每一个项目都会创建一份新的tomcat配置
- 工作空间项目和Tomcat部署的web项目
- Tomcat部署的web项目对应着工作空间项目的target目录
- Tomcat真正访问的是Tomcat部署的web项目
- WEB-INF目录下的内容不能直接访问
- 断点调试时使用"小虫子"进行debug调试
# IDEA服务器部署
war和war exploded的区别
- war模式这种可以称之为是发布模式,看名字也知道,这是先打成war包,再发布
- war exploded模式是直接把文件夹、jsp页面 、classes等等移到Tomcat 部署文件夹里面,进行加载部署。因此这种方式支持热部署,一般在开发的时候也是用这种方式
# Language level
Java JDK 在每个新版本都会有其新特性,而新版本一般也会向下兼容旧版本的特性,IntelliJ IDEA 是对这些 JDK 的新特性是这样介绍的:
- JDK 6 的新特性:@Override in interfaces
- JDK 7 的新特性:Diamonds,ARM,multi-catch etc
- JDK 8 的新特性:Lambdas,type annotation etc
- JDK 9 的新特性:Jigsaw project etc
# 调整Language level
lambda是java8才有的 ,默认使用Java7环境,就算我们用的是高版本java,它还是使用7来编码
- 项目调整language level的方法
- 对于大型项目,各个 Module 用到的 SDK 和 language level 很有可能是各不一样的,IntelliJ IDEA 对此也进行了支持
- 打开 File -- Settings -- Compiler -- Java Compiler设置Project bytecode version;同时修改项目对应的Target bytecode version
# 自动注入bookDao提示错误
IDEA在检测依赖关系的时候,没有找到适合的类注入,所以会提示错误提示,但是程序运行的时候,通过MyBatis代理对象就会被创建,框架会使用DI进行注入,所以程序运行无影响。
# 创建boot项目连接不到服务器
使用idea快速创建springboot项目时会出现连接不到服务器的情况。
设置代理:进入到IDEA的setting,搜索 HTTP Proxy,选择Auto-detect proxy settings,点击最下面的Check connection弹出如下的输入框,输入地址:
https://start.spring.io
https://start.spring.io/
http://start.spring.io
http://start.springboot.io/
# 忽略项目生成的文件
# 实现右键压缩css和js文件
发布时有些css和js文件较长多行,导致加载的时候略慢,所以想把指定的css或js压缩
# 整合 yuicompressor-2.4.8.jar
# 打开Settings窗口
左上角File -> Settings
# Program
前面的name和Description自定义
java
# Arguments
F:\yuicompressor-2.4.8.jar 这个路径就是你下载的那个jar本地路径
//css 的用这个
-jar F:\yuicompressor-2.4.8.jar --type css --charset utf-8 $FilePath$ -o $FileNameWithoutExtension$.min.css
//js 的用这个
-jar F:\yuicompressor-2.4.8.jar --type js --charset utf-8 $FilePath$ -o $FileNameWithoutExtension$.min.js
# Working directory
点击框架中右边 + 加号
再点击OK,然后重启IDEA
# 压缩文件
选择css或js文件右键,如下操作
# Services 相关问题
# Services 窗口添加了springboot但是是空白
- 把所有的 maven 依赖移除,重新添加
- 最后,只需要清一下idea的缓存,重启一下idea就行了
# Services 面中缺少模块服务
在.idea包下找到workspace.xml
<component name="RunManager" selected="Spring Boot.RuoYiGatewayApplication">
<configuration name="CollectSeedsApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
<!--模块名-->
<module name="ruoyi-modules-collectseeds" />
<!--启动类的路径-->
<option name="SPRING_BOOT_MAIN_CLASS" value="com.ruoyi.collectseeds.CollectSeedsApplication" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
</component>