各种版本都比较老,用起来也是常出各样的问题,终于找到一个看来不错的新教程,是原先那个教程的升级。遂决定升级一下开发环境,在升级遇到一些问题,摸索将其解决,得些体会记录备查。
最终确定开发环境约束如下:
maven:3.9.6、jdk:17、spring:6.1.5、spring boot:3.2.4、idea:2023
其它安装与设置如常,唯一处偷懒导致出现问题:将 maven 3.3.9 的配置文件复制到 3.9.6 中,在 idea 中设置 maven 属性时,一 repository 值依旧指向原 3.3.9 且无法更改,由此断定该设置应由外部配置文件决定,仔细回想前番配置过程与文件。
仔细检查 maven 的配置文件,发现有配置项未做调整导致出现问题。因为该配置文件中大部分配置与本地路径无关,未做调整便复制至 3.9.6 中直接使用。
XML
<localRepository>d:/appfolder/apache-maven-3.9.6/repository</localRepository>
这是设置 maven 本地仓库的路径。修改为 3.9.6 的即可。重启 idea 问题解决。
配置镜像源方法同前,使用了国内阿里的源。
XML
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
配置 jdk 版本,本次确定为 17。
XML
<profile>
<id>jdk-17</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>17</jdk>
</activation>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.compilerVersion>17</maven.compiler.compilerVersion>
</properties>
</profile>
===========================割===========================
老辣鸟的救赎
===========================割===========================
调整完毕,打开前番的小练习,不出意外果然出意外了,前面来回折腾了若干次,对此多少有些了解,按自己想法逐一去尝试解决,成!
出的问题通常是依赖版本的问题,打开 pom 文件挨着处理就好,鼠标悬停在错误都有提示,按提示修改为正确的就好。
1、调整 spring boot 版本,尝试先修改版本号。原为 1.5.9.RELEASE,将 1.5.9 改为 3.2.4 后还提示报错。网上检索一下其版本,方知 "1.5.9.RELEASE" 中的 RELEASE 亦为版本号的一部分,于是将 "1.5.9.RELEASE" 替换为 "3.2.4",这个红线消失。
2、其它几个有版本限定的配置,原版本号已修改,此为正确的版本号。操作:将鼠标悬停于错误之处 ,会弹出提示,指出当前环境可用的版本号,按提示进行修改即可。
XML
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.5.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>2.7.2</version>
</dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>jquery</artifactId>
<version>3.6.4</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>6.1.5</version>
</dependency>
这里所谓 jdk 升级只是非常简单调整了版本号,实际中应比此复杂的多,可能还有函数(方法) 、参数的调整。
小白初学,大神勿喷![手动狗头]