1:IDEA
1:IDEA常用快捷键
1. Shirt + Shirt :查找接口路径
2. Ctrl + Shirt + F :全局搜索
3. Ctrl + Shirt + R :全局替换
4. Ctrl + Shirt + O:清除无效包
5. Ctrl + Y :删除空
6. Ctrl + Alt+ L:代码格式化
7. Ctrl + Shift + +Alt + J : Alibaba Java Coding Guidelines 进行规范扫描
8. 把代码块提取成方法:Ctrl+Alt+M
2:IDEA新建java项目
1:新建Java项目 选择 Spring Initializr (Spring Boot 项目模板)

2:新建Java项目 项目名称为 jenkins-demo
直接修改Artifact为jenkins-demo
groupId和artifactId是maven管理项目包时用作区分的字段
groupId:一般分为多个段,其中前两段,第一段为域,第二段为公司名称
artifactId:artifactId一般是项目名或者模块名
注意:可以进行以下规范修改
修改Description的Demo为 jenkinsDemo
修改Package的jenkinsdemo为 jenkins

3:一直next (需要引入的maven 可以之后在建立项目后 在pom上引用)
4:设置项目所在路径 以及 项目名称

5:Project Structure 设置Modules 里面的Mark as 设置新项目的文件属性

6:注意设置项目的maven 路径是不是自己电脑的maven路径

7:注意设置项目的git 路径是不是自己电脑的git路径

8:设置为git项目 Create git Repository

9:GitLab新建项目
项目名称为 jenkins-demo 与 IDEA创建的新项目同名
10:Copy GitLab里面的SSH 或者HTTPS 连接

11:选择VCS里面 Remotes 设置git的Remotes路径

12:可以设置项目的名称jenkins-demo 以及 对应远程仓库路径

13:选择远程仓库名称(即是推送该名称对应路径的远程仓库)
jenkins-demo :master(master为分支名称)

3:IDEA项目中的自动生成的文件

1: .idea文件夹:存放项目的配置信息
包括数据源,类库,项目字符编码,历史记录,版本控制信息等
2: .mvn文件夹:存放mvnw相关文件
存放着maven-wrapper.properties和相关jar包以及名为MavenWrapperDownloader的java文件
3: .gitignore:分布式版本控制系统git的配置文件,意思为忽略提交
在 .gitingore 文件中,遵循相应的语法,即在每一行指定一个忽略规则。 如:.log、/target/、.idea
4: .iml文件:intellij idea的工程配置文件
里面包含当前project的一些配置信息,如模块开发的相关信息,比如java组件,maven组件,插件组件等,
还可能会存储一些模块路径信息,依赖信息以及一些别的信息。
5: mvnw:全名是maven wrapper的文件
它的作用是在maven-wrapper.properties文件中记录你要使用的maven版本,当用户执行mvnw clean 命令时,
发现当前用户的maven版本和期望的版本不一致,那么就下载期望的版本,然后用期望的版本来执行mvn命令
6: mvnw.cmd:执行mvnw命令的cmd入口
*注:mvnw文件适用于Linux(bash),mvnw.cmd适用于Windows 环境。
7: pom.xml:项目对象模型(核心重要)
pom.xml主要描述了项目的maven坐标,依赖关系,开发者需要遵循的规则,缺陷管理系统,组织和licenses,
以及其他所有的项目相关因素,是项目级别的配置文件。
在文件目录隐藏相应文件
Setting -> Editor -> File Types

添加以下 需要忽略的文件 然后 apply
.idea

4:IDEA 热部署与监控 插件
1:JRebel 和 XRebel的作用
JRebel:修改完代码,不想重启服务,就使想代码生效。
XRebel:请求中,各个部分代码性能监控。例如:方法执行时间,出现的异常,SQL执行时间,输出的Log,MQ执行时间等。
2:安装JRebel 和 XRebel

3:JRebel的使用激活

1:使用 jrebel.qekang.com网址
2:通过该网址生成 UUID https:
3:jrebel.qekang.com网址 拼上 UUID
https:
4:输入一个邮箱

4:JRebel的使用
使用JRebel启动服务,当修改了所启动服务的对应代码
JRebel会对服务进行热部署
JRebel: Reloading class
JRebel: Reconfiguring bean

5: XRebel的激活
使用XRebel启动
点入http://localhost:8080/xrebel 跳转到对应的UI页面

使用邮箱注册:
注册完点进setting:
刷新页面

重新启动服务 XRebel显示已经进入试用期

6: XRebel的使用
点击闹钟按钮 查看花费时长

5:IDEA ( .iml错乱导致的各种问题)
0:问题总览 和 优先处理方案
问题:
1:整个项目结构都没有了
2:项目启动报错
3:代码修改后重新启动还是原来的代码
先尝试:把项目删了 重新再import


1:整个项目结构都没有了
刷新一下maven

2:项目启动报错
找不到或无法加载主类
执行单元测试 单元测试找不到
发现是启动时 连 target(存放.class的文件夹)都没有了
点击 maven - lifecycle - install
重新进行项目的打包编译

3:代码修改后重新启动还是原来的代码
方式一:箭号处打钩即可
每次运行时都会重新执行maven - lifecycle - install命令
启动速度会变的特别慢

方法二:
使用网上方法 重新生成 .iml
在项目的路径下运行 idea terminal -> mvn idea:module

这个时候点开target(存放.class的文件夹)
\target\classes (java启动 .class)
\target\test-classes (单元测试 .class)
查看target里面相应的代码 发现 编译后的代码还是之前的代码

这个时候做一个修改
\target\classes 改为 \target\classes-other
\target\test-classes 改为 \target\test-classes-other

这个时候一切都变成正常了
然后再把\target\classes \target\test-classes 重新改回去就好
4:any changes made in its configuration may be loast after reimporting
修改上面图片中 \target\classes \target\test-classes 是导致的的报黄
实际上会导致下图 language level的改动失效

any changes made in its configuration may be loast after reimporting
只要项目的配置发生改动(如pom.xml),上述设置就会失效 。(language level的改动)
由于pom的默认编译时的JDK版本是1.5 同时language level设置1.8已经失效
因此需要在项目的pom上加上maven处理JDK1.8
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>