java项目启动排坑
2020年10月19日 • ... • ☕️ 2 min read
目前本地java开发相关版本。
vscode:September 2020 (version 1.50)
插件Language Support for Java(TM) by Red Hat (version 0.69.6)
JDK 1.8
问题
1、Language Support for Java(TM) by Red Hat插件
Java 11 or more recent is required to run. Please download and install a recent JDK
该插件0.64.1以上版本,需要Java 11支持,但是如果安装了AdoptOpenJDK 11,可能会由于项目里其他包不支持导致编译失败。
解决办法只能是卸载AdoptOpenJDK 11,然后把插件降级到0.64.1。
2、spring-boot启动失败
紧接着遇到第二个问题,当把java从11切换成jdk 1.8之后,运行spring-boot,报错
[ERROR] Destroy method on bean with name 'org.springframework.boot.autoconfigure.internalCachingMetadataReaderFactory' threw an exception
猜测切换JDK之后,由于依赖变化,需要重新mvn install。最暴力的办法是删除.m2目录下的repository,然后重新install,类似js里清除node_modules目录。
3、maven命令配置
maven的参数都可以通过pom.xml
文件配置,比如项目的install带了测试,但是又不方便改,所以一般会运行mvn install -Dmaven.test.skip=true
,但是每次都打命令会很繁琐。所以想把参数放到文件里,直接install就带上。
Maven属性可以在POM中的<properties>
部分设置,这等同于在命令行中设置为-DmyProperty=myValue
。
<project>
<properties>
<maven.test.skip>true</maven.test.skip> <!-- more options -->
</properties>
<!-- more attrs -->
</project>
偶尔回去看看java,感觉还是……很糟糕。