Bootstrap

jdk8和17无缝切换,安装idea且免费使用,maven安装配置一条龙超详细!(保姆教程)

一、基本概括

由于jdk的稳定版本是常见的jdk8版本,但是新推出的SpringBoot3需要jdk17支持,而且相对老版的springboot,springboot有很多优势:


1. Java 17基线和对Java 19的支持:确保了与最新Java版本的兼容性,利用最先进的语言特性来提高开发效率和应用性能。
2. 整合了Spring框架6和Jakarta EE 9:这提供了最新的框架支持,以及对现代Java企业开发的全面支持。
3. 对GraalVM原生镜像的支持:这项支持使得创建云原生应用更加高效,可以生成更小和更快的原生镜像,从而提高了应用的启动时间和性能。
4. 增强了对响应式编程的支持:Spring Boot 3完全支持响应式编程模型,使得构建响应式和可伸缩的应用变得更加容易。
5. Log4j2的增强:改进了日志功能,更好地支持现代化日志管理。
6. 改进的可观测性:借助Micrometer和Micrometer跟踪,开发者现在可以记录多种应用指标,更好地监控和调试应用。

springboot3更多信息:

 What are the Spring Boot 3 New Features?

Spring Boot 3 and Spring Framework 6.0 – What’s New | Baeldung

New Features In Spring Boot 3 And Spring 6 - JavaTechOnline

目前jdk情况分析如下

JDK版本

类型

发布日期

强调

推荐

8

长期支持

03/2014

拉姆达斯

先前发布模型下的最后一个 LTS 版本。Oracle 的免费更新

已结束

,但仍由其他人维护。在接下来的几个月内升级到 11 或 17!

9

特征

09/2017

模块

引入了新的发布模型。停产。现在升级到 11 或 17!

10

特征

03/2018

变量

停产。现在升级到 11 或 17!

11

长期支持

09/2018

新的 HTTP 客户端

广泛使用的 LTS 版本。计划在未来几个月内升级到版本 17。

12

特征

03/2019

停产。现在升级到17!

13

特征

09/2019

停产。现在升级到17!

14

特征

03/2020

切换表达式

停产。现在升级到17!

15

特征

09/2020

文本块

停产。现在升级到17!

16

特征

03/2021

记录

停产。现在升级到17!

17

长期支持

09/2021

密封类

当前的 LTS 版本。

立即更新至 17.0.3+!

18

特征

03/2022

默认为 UTF-8

坚持17!这是一个没有重要功能的短期版本。

-Dfile.encoding=UTF-8

您可能想通过在当前的 JDK 中进行设置来检查是否遇到“默认 UTF-8”的任何问题。

19

特征

09/2022

仅预览和孵化器功能

坚持17!如果之前升级到 18,现在升级到 20。

20

特征

03/2023

仅预览和孵化器功能

坚持17!如果之前升级到 19,现在升级到 20。

二、jdk安装操作:

(一)、jdk8和17安装

1、卸载JDK应用程序

不能单纯打开应用卸载或者删除目标文件夹,删除不彻底的,后期容易出问题。

1. 安全风险: 保留系统上的旧版Java可能会构成严重的安全风险。移除旧版Java可以确保Java应用程序能够在系统上运行,并拥有最新的安全性和性能优化。

2. 环境变量冲突: 如果操作系统的环境变量(如PATH)未正确配置,可能会导致系统调用错误的Java版本,这可能导致兼容性问题或其他未预见的错误。

3. 磁盘空间: 旧版和新版JDK同时存在会占用更多的磁盘空间

4. 版本管理:对于进行开发的用户而言,可能需要根据不同的项目要求切换不同版本的JDK,如果不维护好各个版本的JDK环境,管理起来可能会变得复杂。

5. 自动卸载: 特别指出的是,Oracle的最新JDK安装程序从JDK 11和JDK 17开始,会自动移除旧版本的JDK。如果用户没有预见到这一点,可能会损失掉他们原本想要保留的旧版本。

综上所述,最好根据个人需求和安全考虑,在安装新版本JDK前卸载旧版本。如果需要保留旧版本用于特定目的,则需确保合理配置和管理不同版本的JDK环境,以及实时更新保持软件安全。

这里借鉴大佬最小白操作:

老版本卸载。

先检查是否存在jdk,不然容易出错。

win+R调出命令行:

java -version

如果没有则进行下载,如果有老版本建议卸载,再进行安装。

卸载方法:

1.1、删除jdk程序

①在开始处,点击设置

②点击应用

③点击程序和功能

④打开程序与功能,我们会发现有两个Java文件,我们右键卸载它(无先后顺序,先卸载第一个或者第二个均可以)

⑤笔者在此先卸载第一个,点击是

⑥之后卸载第二个,点击是

1.2、删除JDK环境变量

卸载完成后我们将环境变量也一并删除

①打开控制面板,搜索高级,找到并选择高级系统设置

点击环境变量

⑤选中我们配置的JAVA_HOME环境变量,之后点击删除

⑥点击Path---->删除掉我们所设置JDK8环境变量

⑦删除掉之后如下图所示,之后点击确定

⑧点击确定

⑨点击确定

1.3、验证Java是否卸载成功

①打开cmd(或Windows+R键打开运行窗口,输入cmd)

②输入命令:javac

javac

输入命令:java

java

输入命令:java -version

java -version

显示java不是内部或外部命令 也不是可运行的程序就表示已经成功删除了,如下图所示:

OK!JDK8卸载成功!

若全部都提示不是内部指令,卸载干净。

(二)、下载jdk

——jdk8、17官网下载地址:(一般不推荐官网下载,一是需要网络环境支持,二是下载缓慢)

Java Downloads | Oracle

——百度网盘:

jdk17

链接:百度网盘 请输入提取码 
提取码:8888 

jdk8

链接:https://pan.baidu.com/s/1O-gO0uzx94apsZQMABYsig?pwd=8888 
提取码:8888 
 

——国内镜像网站:

1、编程宝库 java jdk镜像

JDK下载 - 编程宝库

2、清华AdoptOpenJDK镜像Index of /Adoptium/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

3、华为java-jdk镜像
Index of java-local/jdk
 

打开官网网址选择如下:

spring3只支持jdk17对应jdk3版本,如果要jdk1.8.0和jdk17切换使用则需要配置环境变量引用。

1、jdk1.8.0和jdk17更换需要同时下载jdk1.8.0和jdk17

2、先下载好jdk1.8.0和jdk17,再一同配置环境变量

3、然后解压到创建好的文件下下面zip中为安装软件存放位置,如下:

4、在D盘创建Java文件夹存放两个jdk

jdk1,8下再创建两个文件夹,存放jdk和jre,zip是用来存放jdk安装程序,等会在安装时候jre需要空白文件,安装jre1.8,修改jre的安装路径,建议放在jdk同级目录

jdk17合并了jdk和jre所以一个文件夹即可

下载完成后如下图:

然后点击运行下载好的软件

jdk8为例:

双击下载好的jdk安装包,点击下一步:

 更换安装位置:为其他盘,随后下一步

 

确保安装位置更换成功之后下一步

注意:存放的文件夹要为空! 

当jdk跑完安装之后,会跳出jre安装界面,记得更换位置再下一步,目标文件夹必须空 

选择之前创建的目标文件夹jre

更换安装位置,点击下一步

这一步基本完成,点击关闭即可。

jdk17安装如下:

更换安装位置,再点击下一步

更换后点击确定

确保安装位置为之前创建的空文件夹。再点击下一步

jdk17不涉及到jre的安装选择,直接关闭即可。

如果现在去命令行测试安装情况来看,系统无法识别到所属位置,必须配置环境变量才行。

然后配置环境变量:

控制面板搜索框搜索高级即可看到环境变量

在系统变量中新建变量名

环境变量值是你对于的安装位置绝对路径,看清楚不然会出错。

变量名:JAVA_HOME8

变量值:D:\Java\java1.8.0\jdk1.8.0      //变量值就是jdk8的安装路径,此处为

变量名:JAVA_HOME17 //同样的

新建变量名

变量名:JAVA_HOME17

变量值:D:\Java\java17\jdk17  //变量值就是jdk17的bin安装路径(你自己的安装路径)

做一部分解释:

  1. jdk8在安装的时候需要安装两个东西:jdk和jre。前面我们也说了jdk8中包括jre目录,其实这个jdk8自带的jre和我们单独安装的jre基本上一样。你们可以分别打开这两个jre看看,里面包含的文件基本上一样。

JAVA_HOME //最后新建变量名 %JAVA_HOME(8或17)% //它的变量值为: %你要选择那个选择

JAVA_HOME //最后新建变量名

%JAVA_HOME(8或17)% //它的变量值为: %你要选择那个选择

 

(% %这两个百分号代表引用)。

还需创建如下变量:

变量名:CLASSPATH

变量值:.;%JAVA_HOME%\lib\dt.jar; %JAVA_HOME%\lib\tools.jar

整体如下:

找到Path双击进入进行下步操作

将两个变量新建,并移动到上面

%JAVA_HOME%\bin

%JAVA_HOME%\jre\bin

  1. 在安装jdk17和jdk8的时候,会自动在"Path"中配置路径"C:\Program Files\Common Files\Oracle\Java\javapath"或"C:\Program Files (x86)\Common Files\Oracle\Java\javapath"。由于该路径下提供的工具不完整,建议将其删除,然后按照上面的步骤手动配置"bin"的路径。(也就是说自动配置的路径"C:\Program Files\Common Files\Oracle\Java\javapath"或"C:\Program Files (x86)\Common Files\Oracle\Java\javapath"可以删除,不会影响环境变量的配置,建议将其删除

 完成之后如下图:

之后一直确认到界面关闭,不能之间×了,配置是不会保存的。

三、检测JDK78是否安装成功

打开DOS窗口,直接输入:java -version 看看是不是出现以下信息,如果出现以下信息即表示安装成功:要切换jdk17在环境变量里面更改后便可。

 

至此jdk配置完成:

如果要更换jdk17同如下操作即可:

 

更改为

%JAVA_HOME17% 

一直确认保存即可

再回到命令行测试更改结果:

如果在之前的命令行测试会显示1.8.0版本,重新打开一个新的界面测试:

四 注意事项

  1. 在安装jdk17和jdk8的时候,会自动在"Path"中配置路径"C:\Program Files\Common Files\Oracle\Java\javapath"或"C:\Program Files (x86)\Common Files\Oracle\Java\javapath"。由于该路径下提供的工具不完整,建议将其删除,然后按照上面的步骤手动配置"bin"的路径。(也就是说自动配置的路径"C:\Program Files\Common Files\Oracle\Java\javapath"或"C:\Program Files (x86)\Common Files\Oracle\Java\javapath"可以删除,不会影响环境变量的配置,建议将其删除

三、安装IntelliJ IDEA

下载网址:

下载 IntelliJ IDEA – 领先的 Java 和 Kotlin IDE

IntelliJ IDEA 2023.2 最新变化

IntelliJ IDEA 2023.2 引入 AI Assistant,通过一组由 AI 提供支持的功能助力开发。 升级的 IntelliJ 分析器现在提供编辑器内提示,使分析进程更加直观详尽。 此版本还包括有助于简化开发工作流的 GitLab 集成,以及其他多项值得关注的更新和改进,如下所述。

IntelliJ IDEA 最新变化

1、安装idea

1.1、下载 IDEA 安装包

访问 IDEA 官网,下载 IDEA 2023.2.5 版本的安装包,下载链接如下 :

Download IntelliJ IDEA – The Leading Java and Kotlin IDE

打开页面后,点击 Download 按钮, 等待 IDEA 专业版下载完毕。下载的时候别下错了:

1.2、:卸载老版本 IDEA(未安装则不用管,跳过看下面步骤)

注意,安装新版本 IDEA 之前,如果本机安装过老版本的 IDEA, 需要先彻底卸载,以免两者冲突,导致破解失败。

卸载完成后,点击 Close 按钮关闭弹框:

未安装从此开始第三步:安装 IDEA 2023.2.5 版本

1.3、安装

卸载老版本 IDEA 完成后,双击刚刚下载好的 IDEA 2023.23.4 版本安装包。弹框会提示选择安装路径,选择的安装路径,如何C盘空间足够,建议默认C:\Program Files\JetBrains\IntelliJ IDEA 2023.3.4,若不足,更换安装位置,然后点击 Next 按钮:

然后,勾选 Create Desktop Shortcut 创建 IDEA 桌面快捷启动方式,以方便后面快速打开 IDEA,再点击 Next 按钮 :

记得再勾选 “Add bin folder to the path”

创建关联,勾选哪一个,以后双击电脑上的 .java 文件就会用它打开,建议不勾选

点击 Install 按钮,开始安装:

等待安装完成后,勾选 Run IntellJ IDEA, 点击 Finish 按钮即运行 IDEA :

IDEA 运行成功后,会弹出如下对号框,强制用户需要先登录 JetBrains 账户才能使用:

不用管登录的事,点击 Exit 按钮退出对话框,装备开始破解激活。

1.4、优化

优化补丁我放置在了网盘中

链接:百度网盘 请输入提取码

提取码:6666

汉化方法:

关于汉化方面,据说目前官方已经自带中文,默认情况下中文是不开启的,根据 JetBrains 官方的说明,所有的 i18n 包都是以插件的形式集成到 IntelliJ IDEA中的。需要你自己去集成汉化插件。关于集成汉化插件的步骤是 Ctrl+ALT+S 打开 Settings -> Plugins ,搜索Chinese安装,然后重启即可

2、配置jdk

为当前项目配置 JDK

1、依次点击菜单栏 File -> Project Structrue :

IDEA 配置 JDK 步骤1

2、点击 SDKs -> + -> Add JDK ... ,开始添加新的 JDK :

IDEA 点击添加新的 JDK

3、选择新的 JDK 安装目录,小哈这里新添加的 JDK 17, 然后点击【OK】按钮:

选择新的 JDK 安装目录

4、添加 JDK 成功后,列表中即可看到新添加的 JDK, 然后点击【Apply】按钮, 再点击【OK】按钮:

JDK 添加成功

5、至此,IDEA 中配置 JDK 就完成了。

全局配置 JDK

全局配置 JDK

点击 File -> New Projects Setup -> Structure -> Project 下的 SDK 选项,将其更改为你最常用的 JDK 版本:

IDEA 全局配置 JDK

这样我们就可以完成对于idea的安装操作。

四、Maven下载

项目构建神器——Maven,不仅能帮我们自动化构建,还能够抽象构建过程,提供构建任务实现;它跨平台,对外提供了一致的操作接口,这一切足以使它成为优秀的、流行的构建工具,从此以后,再也不用担心项目搞崩了。

总结一下 Maven 的优点,主要有以下 3 点:

  • 依赖管理:Maven 能帮助我们解决软件包依赖的管理问题,不再需要提交大量的 jar 包、引入第三方库;
  • 规范目录结构:Maven 标准的目录结构有助于项目构建的标准化,通过配置 profile 还可以根据不同的环境(开发环境、测试环境,生产环境)读取不同的配置文件;
  • 方便集成:能够集成在 IDE 中更方便使用。

1、Maven下载

maven配置:

官网:

Maven – Download Apache Maven

解压到空文件夹

安装后进行环境变量配置:

打开命令行:

配置本地仓库:

修改settings.xml

5.1、找到maven目录下的conf文件夹

记事本打开:

本地仓库:(创建一个本地仓库文件夹)

本地仓库地址:

镜像地址更换

idea中maven配置:

1.单一项目配置:

2.全局配置:

关闭项目:

进入所有设置:

同理搜索maven,选择对应的路径便可。

idea创建maven项目

在新建的空项目中新建模块,选择如下:

由于未导入jar包,所以报错:

写入gav坐标

<dependencies> <!-- 日志 --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency> </dependencies>

加载更新即可导入jar包:

坐标查询;Maven Repository: Search/Browse/Explore

这样便是加载成功:

配置完成

————————————————————————————————————————————————————————————————————————————

6、常见问题:

在创建moudle时候容易出现maven导入包出错,原图在于maven仓库idea无权限访问本地创建的maven仓库。

打开编辑设置完全访问。

常见问题:

程序包org.springframework.boot.autoconfigure不存在

使用idea2020.2.2新版本发现新建的springboot项目起不来,报错信息如下:

java: 程序包org.springframework.boot不存在

java: 程序包org.springframework.boot.autoconfigure不存在

java: 找不到符号

新手!!这是让人很烧脑的问题,在经过询问度娘后发现解决办法很多种啊。。

解决方法1:

检查maven是否正确配置。

cmd  >  mvn -v 

解决方法2:

需设置Maven  > Runner  > Delegate IDE build/run actions to Maven。

也就是将IDE构建/运行操作委托给Maven。

方法三:

就是你的maven本地仓库出现问题,maven仓库里面可能存在文件夹为null,但是maven不会跟你说,文件空我就报错,maven只认识文件名称,根本不知道里面的内容,这就是报错原因,

解决:清空本地仓库,然后重新下载,就欧克了。

错误

NoGoalSpecifiedException - Apache Maven - Apache Software Foundation

D:\JAVA\jdk17\bin\java.exe -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:52330,suspend=y,server=n -Dmaven.multiModuleProjectDirectory=D:\IntelliJIDEA_project\ltfbao\myspringboot -Djansi.passthrough=true -Dmaven.home=D:\maven\apache-maven-3.9.5 -Dclassworlds.conf=D:\maven\apache-maven-3.9.5\bin\m2.conf "-Dmaven.ext.class.path=D:\IntelliJ IDEA\IntelliJ IDEA 2023.2.5\plugins\maven\lib\maven-event-listener.jar" -javaagent:C:\Users\LTF\AppData\Local\JetBrains\IntelliJIdea2023.2\captureAgent\debugger-agent.jar -Dfile.encoding=UTF-8 -classpath "D:\maven\apache-maven-3.9.5\boot\plexus-classworlds-2.7.0.jar;D:\maven\apache-maven-3.9.5\boot\plexus-classworlds.license;D:\IntelliJ IDEA\IntelliJ IDEA 2023.2.5\lib\idea_rt.jar" org.codehaus.classworlds.Launcher -Didea.version=2023.2.5 -s D:\maven\apache-maven-3.9.5\conf\settings.xml -Dmaven.repo.local=D:\maven\repository -P jdk-17.0.9

Connected to the target VM, address: '127.0.0.1:52330', transport: 'socket'

[INFO] Scanning for projects...

[INFO] ------------------------------------------------------------------------

[INFO] BUILD FAILURE

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 0.494 s

[INFO] Finished at: 2023-11-14T23:23:39+08:00

[INFO] ------------------------------------------------------------------------

[ERROR] No goals have been specified for this build. You must specify a valid lifecycle phase or a goal in the format : or :[:]:. Available lifecycle phases are: pre-clean, clean, post-clean, validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-site, site, post-site, site-deploy. -> [Help 1]

[ERROR]

[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.

[ERROR] Re-run Maven using the -X switch to enable full debug logging.

[ERROR]

[ERROR] For more information about the errors and possible solutions, please read the following articles:

[ERROR] [Help 1] NoGoalSpecifiedException - Apache Maven - Apache Software Foundation

Disconnected from the target VM, address: '127.0.0.1:52330', transport: 'socket'

Process finished with exit code 1

;