SpringBoot IDEA 版本 - 学习笔记1
1.学习资料
主要是在 bilibili 学习资料,遇见狂神说。
2.下载 IDEA
IDEA全称IntelliJ IDEA,是java语言开发的集成环境。最突出的功能是调试(Debug),可以对Java代码、javascript、JQuery等技术进行调试。据说,是开发者几乎少不了的工具。点击下载。
3.SpringBoot 创建并下载项目
官网,输入要素,生成项目并自动下载。具体做法就是导入 IDEA,亲测表示,直接拖曳即可。点击创建新的 SpringBoot 。
上述问题解决
1. 将 Settings --> Build, Execution, Deployment --> Complier --> Java Complier 配置下的 Project bytecode version: 17 改为 与 项目使用的 JDK 版本一样.
测试结果:本来就是这个设置,无需更新
2. File - Project Structure - SDK and Language Level
设置这两个选项。
测试结果:Language Level 默认设置是18,需要选择版本和项目版本一致。结果可运行!!!
参考:
https://blog.csdn.net/angelbeautiful/article/details/131182554
结果显示,似乎木有 tomcat 启动,因此,需要在本地安装 tomcat 。
Tomcat简单的说就是一个运行JAVA的网络服务器,底层是Socket的一个程序,它也是JSP和Serlvet的一个容器。简单理解为,如果想通过 localhost:port 访问项目,必须安装 tomcat。
至于本地和网络连接的那块跑在本地上的程序,由 tomcat 来完成,为啥 localhost:port 可访问呢? 主要是由于 Springboot 集成到项目中。
这也是本实验的目的:1)从 localhost:port 访问,保证前端可运行; 2)从 CMD 运行保证本机可运行
这篇文章的作者很厉害,已经运行成功了!
然后,我们看看 Springboot 效果。
没跑出来,结果和之前一样的。我们看看为啥 springboot 木有运行本地的 tomcat 呢?
答案一:
这就涉及到启动入口,spring上下文对象的问题,我们本地之所以能通过main方法作为启动,是因为springBoot提供了一个此方式的上下文对象作为适配,通过SpringApplication.run调用了这个入口,进而使用内部的tomcat实现了服务的部署。 之所以直接丢在外部tomcat无法启动,就是因为入口不同,驱动的时候做了适配的上下文。
这似乎是在说,启动 springboot 的时候,不能独立启动 tomcat。测试一下。——well 假设错误 2023.9.17 14:43
假设2:
应该是 springApplication.run() 函数没调用,撤掉注释再试试。 —— 无效 14:49
假设3:
tomcat 安装在 D 盘下。测试将 tomcat 移动到 C 盘安装。 —— 无效
来源:SpringBoot解决内、外tomcat部署兼容问题 - 腾讯云
cloud.tencent.com/developer/article/1642174
进一步学习之后,发现上述所谓的 “内部/外部” 指的是,内嵌版本。
参考:
https://www.cnblogs.com/EasonWu/p/10788757.html
继续下载 embedded,显示 Service Installer 安装界面版本。似乎木有自己需要的内嵌版本。
猜测:
下载 spring-boot-starter-web 依赖包
地址:
https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web/2.3.2.RELEASE
目标:将该 jar 包部署到项目
方法的话,就是手动复制吧。I guess.
External Libraries - 部署到这几个文件夹 16:16
外部依赖包下载完之后,如何使用?
参考:
https://blog.csdn.net/weixin_35242442/article/details/112012263
介绍了两种方法:
1)部署到 src
2)部署到 pom.xml
windows 安装 maven 并且使用 mvn install
参考:
https://zhuanlan.zhihu.com/p/151685696
官网下载失败,测试其他渠道。
参考:
https://blog.csdn.net/qq_46554590/article/details/119428896
这篇文章特点:
1)在 maven conf->setting 文件中 配置 阿里云仓库
据说本来就是用于maven 开发只用,暂时先配置进去。
例如:
<!-- 阿里云仓库,个人配置 -->
<mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror>
2)配置 【环境变量】 直接搜索 “环境变量”
MAVEN_HOME && Path
运行成功
Maven Ready 开始部署 pom.xml 的方法
参考(之前贴过链接):
https://blog.csdn.net/weixin_35242442/article/details/112012263
打开cmd,执行mvn命令
mvn install:install-file
-DgroupId=com.example.demo
-DartifactId=spring-boot-starter-web-2.3.2.RELEASE
-Dversion=2.3.2
-Dpackaging=jar
-Dfile=D:\maven\spring-boot-starter\spring-boot-starter-web-2.3.2.RELEASE.jar
本地安装没成功。没理解错的话, 配置的仓库地址(阿里云仓库)版本号下载的,和本人预期的版本不符合,调用的 pom.xml 都没找着。
从上述报错可知,主要是调取打包资源时候的来言,出现了混乱。参考:
https://blog.csdn.net/qq_46554590/article/details/119428896
查看 pom.xml 也没有发现 localRepository 也木有,怎么办呢?
2023.9.17 20:47 最终发现好像还是可以复制
方法是,在 project structure 中查看 external libraries
上述方法无用。
测试 重新新建项目
这次,选择 springboot version
原来只要跟着视频课里的干即可。我自己前面试了几个方法。发现在依赖包的调用方面,只要注意选择的版本,不选择 snapshot 就能在启动项目的时候,启动 tomcat。
看界面,启动 tomcat ,这样我们可以用浏览器定位前端的运行情况。
1.前端验证,springboot 运行情况
2.在主程序入口配置某个子域名
我仔细查看了一下课程,刨去所有后来带来的心性上的浮躁、情绪的毛躁,把所有代码,一字一字,再,敲,一。遍。
结果:
这里注意,这个点秦老师强调很多次啦!听课一定要仔细,我对自己要求听两遍开始动手,如果要睡着的话,自己先动动手,但是很可能,花了很久的时间,完成一些显而易见的事情。
至此,实验目的1完成。即获知子域名如何配置,注意 import 等一些语法的理解。
springboot package
这里注意,springboot 打 jar 包之后,可以用 cmd 直接运行,脱离于 IDEA。这是很 natural 的,还是提一提。
如何打包呢?
Open Module Settings - Project Structure - Artifacts - jar - from modules with dependencies
1.在 pom.xml 中 用 spring-boot-maven-plugins 调用
2.cmd 直接运行 java -jar 包名
方法1:
https://blog.csdn.net/qq_47183158/article/details/122999763
卡住!
方法2:
https://blog.csdn.net/weixin_57529171/article/details/122828418
卡住原因:压根没开启 maven 项目。
通过 IDEA 将新建的 maven 项目打包,收获到了什么呢?
1.打包所有依赖包都被装入 jar 包内
2.所有外部依赖包,是当场下载的,因此打包需要一定的时间。
自己开启的项目打包方法还没 figure out. 但是,新建 maven 重新打包,结果如下所示:
实验目的2:换个banner