1.Lombok Requires Annotation Processing
“Ctrl+Alt+S”打开Settings的配置界面,选择"Settings > Build > Compiler > Annotation Processors"页签,勾选Enable annotation processing复选框。
2.Unmapped Spring configuration files found.Please configure Spring facet.
“Ctrl+Shift+Alt+S”打开project的配置界面,选择“Facets”页签,点击“+”按钮,添加所有配置文件(New Application Context)。
3.IDEA @SpringBootApplication报错原因
1)Maven的路径要正确
2)选择“Import Maven projects automatically”
3)设置工程自动编译“Build project automatically”
- IntelliJ IDEA 中SpringBoot对Run/Debug Configurations配置 SpringBoot热部署
Use classpath of module选中要运行的模块
VM options:内部配置参数
-Dserver.port=8080 -Dspring.profiles.active=test -Ddebug
server.port可以设置端口号,spring.profiles.active=test可以设置运行环境
-Ddebug 开启debug模式
使用maven启动:
不同版本的spring-boot-maven-plugin的jvm参数配置有所不同,同时与通过main方法启动springboot程序传递参数也有所不同。
在运行main方法时,可以通过java -jar 后面通过添加-D的参数即可传递,比如:
java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 huishi-api-implementation.jar
参考:
java -Djsse.enableSNIExtension=false -Xmx1200m -XX:MaxPermSize=256M -agentlib:jdwp=transport=dt_socket,server=y,address=30306,suspend=n -jar mac-quickstart-2.0.jar -gui
pom.xml文件配置:
org.springframework.boot
spring-boot-maven-plugin
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
此时运行spring-boot:run,是可以正常传递参数。但此时通过mvn spring-boot:run命令来传递参数,参数值将会无效。
同样,即使项目中pom文件配置了上面的plugin,直接通过main方法启动,此参数也是不会生效的。打包部署时依旧需要在执行命令中添加参数项。
这种方式要改动文件,对于提交比较麻烦,不太喜欢。
idea中对springboot进行热部署
1.SpringLoaded
使用pom.xml修改
或者添加vm参数:
-javaagent:D:\maven\repository\org\springframework\springloaded\1.2.6.RELEASE\springloaded-1.2.6.RELEASE.jar -noverify
我比较喜欢添加vm参数的方式
这种方式系统会监视classes文件,当有classes文件被改动时,系统会重新加载类文件,不用重启启动服务。
2.使用spring-boot-devtools
pom.xml中添加
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
将依赖关系标记为可选true是一种最佳做法,可以防止使用项目将devtools传递性地应用于其他模块。
这种方式是使用自动重启
自动重启的原理在于spring boot使用两个classloader:不改变的类(如第三方jar)由base类加载器加载,正在开发的类由restart类加载器加载。应用重启时,restart类加载器被扔掉重建,而base类加载器不变,这种方法意味着应用程序重新启动通常比“冷启动”快得多,因为base类加载器已经可用并已填充。
所以,当我们开启devtools后,classpath中的文件变化会导致应用自动重启。
总之上面这两种方式都是在改动class文件的时候才会进行热部署,所以要手动进行编译或者开始idea的自动编译。
3.jrebel插件
5.解决项目module图标下面没有蓝色小方块的问题
打开modules.xml文件,添加或修改fileurl或filepath,如果没有iml文件要先生成
-
idea如何生成iml文件
在项目的pom文件位置处打开cmd执行命令: mvn idea:module -
IntelliJ IDEA 中 右键新建(new)时,选项没有scala(java) class的解决方法和具体解释
Project Structure——>modules 中选中目录分别设置为源目录和资源目录
8.idea新建的springBoot项目,自动生成的入口类中提示错误Cannot resolve symbol ‘@springbootapplication’
点击install maven会从服务器下载缺少的jar包到本地仓库,这个过程要保证网络可用。(具体的maven以及maven镜像库设置请百度maven配置这里不做讲述了)下载完成后重新导入一下jar包,maven --> reimport 一般问题就可以解决。
9.idea 启动时报 error:java 无效的源发行版11
编译的版本不符合,需要修改统一
10.将下载到本地的JAR包手动添加到Maven仓库
ojdbc-----------------(参数二) ojdbc-----------(参数三) 10.2.0.4.0------------(参数四) 语法: mvn install:install-file -Dfile=jar包的位置(参数一) -DgroupId=groupId(参数二) -DartifactId=artifactId(参数三) -Dversion=version(参数四) -Dpackaging=jar 我把“ojdbc-10.2.0.4.0.jar”放到了“D:\Program Files\mvn\”下, 注意:“Program Files”中间有空格,所以要加双引号,另外三个参数,从上面复制过来即可,下面是我安装ojdbc-10.2.0.4.0.jar包使用的命令: mvn install:install-file -Dfile="D:\Program Files\mvn\ojdbc-10.2.0.4.0.jar" -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.4.0 -Dpackaging=jar11.设置本地仓库目录
设置本地的maven仓库,我们在解压后的目录D:\apache-maven-3.5.3\conf找到settings文件, 若不设置则默认的路径为${user.home}/.m2/repository, 在修改settings文件之前,我们选择一个磁盘创建我们Maven本地仓库的位置,如F:\Maven\repository。使用文本编辑工具如notepad++等或者windows自带的文本编辑器打开D:\apache-maven-3.5.3\conf(即解压后目录的conf目录)下的settings文件,修改的设置,原来这部分设置是被注释掉的,我们将注释放开,如下图所示,并设置repository(本地仓库)的位置,如下图所示。
- intellij IDEA设置自动导入删除引用包