idea使用Spring Initializer创建springboot项目的坑【保姆级教学】

news/2024/11/9 0:34:00/

项目场景:

提示:这里先简述项目创建后遇到的问题和解决方案:

idea 使用 Spring Initializer 创建springboot项目后,
有以下问题:

① 右键没有Run
② 右键New新建文件发现无Java Class选项

然后解决掉 ①② 问题后出现新的问题:

③ @SpringBootApplication 注解爆红找不到引用
④ pom依赖能下载但是加载不到本地


项目创建和解决方案

提示:下面开始逐步演示创建过程遇到的问题和解决方案

① - File ——> New ——> Project

在这里插入图片描述

② - 选择默认Default,然后Next

在这里插入图片描述

③ - Type选择默认Maven,然后Next

在这里插入图片描述

④ - 勾选上 Web 模板,然后Next

在这里插入图片描述

⑤ - 选择好项目的位置,点击【Finish】:

在这里插入图片描述

默认创建好的项目结构如下:

在这里插入图片描述

这时候项目没有爆红,但是出现了三个问题:
① 只有pom爆红
② 右键没有Run
③ 右键New新建文件发现无Java Class选项

① 只有pom爆红

在这里插入图片描述

② 右键没有Run

在这里插入图片描述

③ 右键New新建文件发现无Java Class选项

在这里插入图片描述

先解决问题 ① 只有pom爆红,设置项目maven路径

在这里插入图片描述

然后选中pom.xml右键如图下载依赖到maven仓库

在这里插入图片描述

下载过程中有可能会遇到这个错误:
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.11.0:compile (default-compile) on project demo5: Fatal error compiling

在这里插入图片描述

这是因为:maven-compliler-plugin版本与maven版本不一致,Maven版本太低或maven-compiler-plugin版本过高。
想了解的可以自行去搜【JDK对应的Maven版本】。

因为我是JDK 1.8,所以降低maven-compiler-plugin版本
注意:上面创建过程虽然选择JDK1.8但是实际pom里还是17

在这里插入图片描述

改完之后重新下载依赖到仓库

在这里插入图片描述

这时候还是有可能遇到问题:

在这里插入图片描述

在pom.xml文件中添加以下依赖,或者把工程的测试类删除也行

        <dependency><groupId>org.junit.jupiter</groupId><artifactId>junit-jupiter</artifactId><version>RELEASE</version><scope>test</scope></dependency>

我这里选择添加依赖,改完之后重新下载依赖到仓库

在这里插入图片描述

下载成功后,去仓库看下发现确实多了很多文件

在这里插入图片描述

在这里插入图片描述

三个问题现在解决了一个,接下来解决剩下两个:
① 只有pom爆红
② 右键没有Run
③ 右键New新建文件发现无Java Class选项
问题二三其实是同一个问题,
选中src右键如图操作

在这里插入图片描述

Sources 描述: 一般用于标注类似 src 这种可编译目录。有时候不仅 src 目录需要可编译,还有其他一些特殊目录也需要可编译,就需要对该目录进行此标注。只有 Sources 这种可编译目录才可以新建 Java 类和包,这一点要注意。

操作后发现② ③问题已经解决,但是出现了新的问题:
导入依赖的代码都变红

在这里插入图片描述

在这里插入图片描述

问题就在这里: 没有将需要的pom依赖自动加载到项目
选择 File -> Project Structure -> Project Settings -> Modules:

在这里插入图片描述

解决方案:删除下面文件
在这里插入图片描述

然后重新Reimport,如果没反应就关闭idea,然后打开就会自动加载依赖到项目

在这里插入图片描述

注意:这里包结构自动发生了变化,并且依赖也加载了

在这里插入图片描述

这两个地方是一一对应的

在这里插入图片描述

项目默认端口号8080,可以设置一个不重复的然后测试是否能启动

在这里插入图片描述

右键 run

在这里插入图片描述

启动成功,端口号是上面设置的

在这里插入图片描述


补充1:

上面 选中src右键如图操作设置为 Sources,应该直接选中java设置的。
这两种应该都可以,
即使选择src设置,关闭项目后再打开也会自动变化的,
上面逐步演示的步骤就是选中src右键设置为 Sources

在这里插入图片描述


补充2:

之所以这么详细写这个文章,
是因为我在dea使用Spring Initializer创建springboot项目遇到的这些坑,
网上去查,
实在是没看到有人碰到了我出现的这么一系列问题,
很疑惑大家真的创建springboot如此顺利吗?
也许是的,
不过这个如果有人碰到上述问题,
这里将给你一个解决方案作为备选。

最后关于删除的文件可以参考:
链接: 什么是maven wrapper?


补充3:

走捷径:使用阿里云的镜像。
这是后面网上看到的一个方案,一步到位,不会遇到上面的问题。

在这里插入图片描述

最终结构图

在这里插入图片描述


http://www.ppmy.cn/news/1158908.html

相关文章

【分享】一个基于 Python 开发的12306 抢票项目,快来学习!

哈喽&#xff0c;大家好&#xff0c;我是木易巷~ 12306抢票软件 "黄金周" 十一黄金周如约而至&#xff0c;这意味着某些开源项目又将迎来一次繁荣的热潮。这次&#xff0c;上榜的是一个与 12306 抢票相关的脚本&#xff0c;它基于 Python 编写&#xff0c;具备自动…

Spring: 通过注解存储Bean对象

目录 一, 配置扫描路径 二, 为什么要使用注解及其关系 三, 通过类注解存储Bean 四, 类注解存储Bean的命名规则 五, 通过方法注解存储Bean 六, Bean 重命名的几种方式 一, 配置扫描路径 我们在rescourse目录下创建Spring的配置文件 spring-config.xml ,粘贴以下代码 &l…

LoRa无线温控器的技术选择及应用优势

一、LoRa无线扩频技术在无线温控器市场需求分析 中央空调系统末端风机盘管智能化节能运行已经成为行业的发展趋势&#xff0c;实现风机盘管智能化运行需要强大的通讯技术支持。各种先进的现场总线技术如LonWorks、BACnet MS/TP总线技术联网型房间温控器相继进入市场,而低成本的…

【技巧】如何设置Excel表只输入固定内容?

如果你需要在Excel表格中输入固定的内容&#xff0c;可以设置“限制录入内容”&#xff0c;这样就只能输入设置好的内容&#xff0c;避免不小心输入错误信息。下面来看看如何设置吧。 首先&#xff0c;打开Excel表格后&#xff0c;选中需要输入固定内容的表格区域。 比如图片…

【Linux学习笔记】git工具

1. 仓库克隆1.1. .git ignore文件 2. git的三板斧 1. 仓库克隆 首先打开gitee网站注册一个账号&#xff0c;使用该账号创建一个仓库&#xff0c;然后复制仓库的https地址&#xff0c;然后到xshell使用命令进行仓库克隆。 创建仓库 其中创建仓库&#xff0c;详细的可以去网上搜…

【vim 学习系列文章 10 -- vim 将代码中空格高亮显示方法】

文章目录 vim 高亮空格使用背景如何配置vim 可以自动显示空格呢&#xff1f;vim highlight 命令使用介绍vim 空白行的处理vim match 命令详细介绍 vim 高亮空格使用背景 开发人员在编写代码之后&#xff0c;在review通过之后会将代码推到服务器然后merge&#xff0c;但是有些代…

[大三上20231016]JavaEE SpringBoot

[大三上20231016]JavaEE SpringBoot 学习是个积累,踏踏实实去做,多去虚心请教,热爱兴趣很重要 课前提问: Spring框架中的核心组件是什么? IOC,AOP IOC: Inversion of Control即控制反转 AOP: Aspect Oriented Programming 面向切面编程 什么是IOS什么是DI? IOS(作用:…

EVT/DVT/PVT/MP是指在制造行业一个产品

EVT/DVT/PVT/MP是指在制造行业一个产品研发导入从试产到量产的不同阶段&#xff1a; EVT&#xff1a;Engineering Verification Test工程验证测试阶段 DVT&#xff1a;Design Verification Test设计验证测试 PVT&#xff1a;Production Verification Test 小批量生产验证测试…