快速在本地运行SpringBoot项目的流程介绍

目录

前言

一、环境配置

1.1Java环境

1.2Maven环境

1.3IntelliJ IDEA安装

1.4MySql安装

二、项目导入与启动的过程

2.1Maven镜像和本地仓库

2.1.2镜像配置

2.1.3配置本地仓库

2.2导入项目与启动

2.2.1加载Maven设置

2.2.2配置jdk与java版本

2.2.3创建数据库

2.2.4修改数据库配置

2.2.5配置服务,启动项目!

三、Q&A


前言

本篇文字的内容可能十分小众,主要针对于有其他人的开源的SpringBoot项目,需要在本地上运行的uu,会给大家介绍一下SpringBoot项目启动的流程,以及我初次接触SpringBoot项目启动时遇到的问题。没错,我就经历了这个很小众的过程。

虽然一般这种项目都会带有.md文件,但是毕竟是人家的开源项目,.md文件只会告诉你大致的流程,不会手把手教你,对于没有基础,但又由于某些原因需要运行SpringBoot项目的uu来说,那可太折磨人了,一点点的小问题就可能会折磨你好久。

话不多说,进入正题。

一、环境配置

由于环境配置过程需要下载一些东西,至于下载过程什么的Bilibili或者其他博客一般都有非常详细的介绍,毕竟我也是看着其他人的介绍做的,所以具体的下载安装过程的话大家自行百度把。

环境已经配置过的,可以跳过这一部分看后边。

1.1Java环境

Java官网:Java Downloads | Oracle[这里是图片001]https://www.oracle.com/java/technologies/downloads/?er=221886

目前使用最多的Java版本是java 8,或者叫jdk1.8.最新的长期支持版本应该是jdk21,这个得看你的项目需要哪个版本,如果不是特别新的项目的话,一般都是使用的jdk 1.8,需要点击上图所示的Java archive,找到java 8,下载安装即可。

安装完成之后,记得配置环境变量:

右键点击我的电脑->属性->高级系统设置,

在下方的系统变量的地方,点击新建,变量名为JAVA_HOME,变量值选择你安装的JAVA的包含bin的目录

然后再双击系统变量里面的Path,新建一个 %JAVA_HOME%in。保存退出。

win+R输出CMD回车打开命令行,在CMD命令行输入

java -version

看到java版本信息,说明配置完成

1.2Maven环境

maven环境配置与java类似,需要下载并安装maven

maven的官网为:Maven – Download Apache Maven[这里是图片008]https://maven.apache.org/download.cgi

往下翻一点找到我们需要的Maven,选择下图框选的其中一个即可,建议选择.zip文件

安装完成maven之后,需要进行上文配置JAVA的环境变量的过程,只不过需要把上文提到的“JAVA_HOME”改为“MAVEN_HOME”,路径调整为MAVEN的路径即可。不过好像最新的MAVEN已经支持在安装时自动帮你配置好环境变量了,建议还是自己手动弄一下吧。

配置好之后,在CMD命令行输入,出现下图所示的版本信息,说明配置成功。另外多提醒一点,maven的简称一般为nvm。

mvn -version

1.3IntelliJ IDEA安装

IntelliJ IDEA是JAVA编译器,目前应该是使用的比较多的。

IntelliJ IDEA是JET BRAINS的一员。下载链接如下

一定要下载专业版!专业版需要付费!PDD搜一下IntelliJ IDEA就能搜到破解版脚本。社区版有些很关键的功能都没有,大概率会导致后续项目运行不起来(没试过)

IntelliJ IDEA – the Leading Java and Kotlin IDE (jetbrains.com)[这里是图片013]https://www.jetbrains.com/idea/安装破解流程这里就省略了

1.4MySql安装

MySql需要安装,没错,需要安装!

MySql安装有些复杂,还需要设置密码,不过自己设置的密码一般都是123456或者root,毕竟没人会攻击你电脑的数据库的。

安装之后需要启动MySql服务,一定确定在任务管理器->服务中的MySql的状态是正在运行,最好不要让它处于“自动启动”的状态,因为它一点也不“自动”

二、项目导入与启动的过程

2.1Maven镜像和本地仓库

前置配置,Maven从Maven仓库下载的默认地址是在国外,所以下载依赖的速度可能会很慢,而且默认下载的依赖都是在C盘,所以我们需要提前修改这些:

打开Maven路径下的conf目录,会看到setting.xml文件,这个就是maven的配置文件,我们可以使用记事本、Vscode、Idea等软件打开。

2.1.2镜像配置

找到标签,可以ctrl+F搜索mirror,将下属代码放到标签下

nexus-aliyun central Nexus aliyun http://maven.aliyun.com/nexus/content/groups/public

在项目中查看大概是这个样子

2.1.3配置本地仓库

配置本地仓库主要是为了让下载的依赖不放在C盘,而是自己指定的路径。可以自行在C盘之外的盘符下载一个repository文件夹(名称随意),当做本地仓库的路径。

搜索标签找到的注释,然后赋值一下,把中间的值改成自己的仓库地址即可,我自己设置的如下,uu使用的时候需要改成自己的路径。

E:IDEsMaven epository

默认的仓库存储路径在c盘User/username目录下的.m2/repository目录,如果你以后都是用自己配置的本地仓库目录的话,可以把.m2/repository目录下的东西删了,可以节省C盘空间。

2.2导入项目与启动

导入项目的方法很多,在idea里选择文件->打开文件或者直接把项目的文件夹拖到idea图标里都可以打开,打开之后,打开之前可以先把项目里的.idea文件删除了,这个文件夹在我们自己使用idea时会重新自动生成,反而前辈留下的idea文件可能还会影响我们后续操作。

2.2.1加载Maven设置

打开项目后,项目的右下角会弹出找到Maven加载脚本,这时先不急着点击加载。因为这是加载就会使用默认的配置文件(现在构建会使用默认的下载地址以及默认的下载存放目录,而不是我们自己配置好的)

我们点击设置,搜索Maven,我们需要改Maven主路径,用户设置文件以及本地仓库地址。

因为IDEA会自带内置的Maven,但是我们一般都会希望使用我们自己的Maven。

这三个具体修改的地址,前边都已经进入过了,具体来说,Maven主路径就选择Maven下载安装的地址,加载到包含bin文件即可。用户设置文件选择在Maven主路径下的conf文件下settings.xml文件,就是我们刚才修改的哪个xml文件,仓库的话可改可不改,因为在我们自己的settings.xml文件里已经生命了本地仓库地址。如果修改的话直接选择刚才新建的本地仓库的地址就好。

做完这些之后,再点击右下角的加载maven项目。

如果你已经看不到这个选项了,那就关闭idea,在文件资源管理器打开项目,把.idea文件删除,重新在idea打开这个文件夹,就可以看到加载Maven脚本的选项了。

再重复一遍上述操作即可(手速快点)

在右侧看到maven的按钮,说明构建,点击一下进入maven项目的详细信息,点击一下刷新就可以自动下载所需的依赖了。

2.2.2配置jdk与java版本

找到项目结构的设置,java版本选择8,jdk选择1.8.当然这个具体用哪个版本的得根据项目,总之jdk的版本要与java版本一致。

找到项目中的pom文件,一般在源代码的根目录下:

找到其中的java version的配置,确保项目配置的java版本与这个一致。

2.2.3创建数据库

点击右侧数据源,选择添加数据源,首次进入会下载相关的驱动,点击下载即可。

在选择Mysql,输入用户名密码,点击测试连接,连接成功就可以点确定了。

这样子连接的是数据库的根目录,但是我们项目一般只用根目录的其中一个架构,我们暂时先这样,以后可以可以把数据源删了,重新连接数据源时,把数据库的那一栏填写上你数据库架构的名称即可。

一般的项目都会自带对应的Sql文件,这个文件包含了生成架构,生成表格以及生成表内的数据,我们可以在Idea里打开项目自带的sql文件(当然也可以选择使用navicat或者DataGrip等专门管理数据库的软件)。

打开Sql文件之后,右上角会提示选择数据源,我们只选择localhost即可,不需要选择具体的架构(只选择下图框选的靠右侧的哪个按钮)因为这些sql文件会生成架构,所以无论我们在那个架构运行,它总能生成新的架构。有点sql脚本只包含生成表格的,这时我们就需要先选择我们需要在那个架构里面生成表,在开始运行脚本了。

配置好数据源之后,ctrl+A选择所有脚本代码,再点击左上角的开始运行即可。

如果脚本太长,运行时卡死的话,也可以先选择一部分脚本运行,再运行接下来的脚本。

2.2.4修改数据库配置

这算是启动前的最后一步了,我们需要找到配置文件中设置的用户名和密码,改成我们自己的用户名和密码,这个配置可能出现在不同的配置文件中,相对来说比较难找,可能.md文件会提示需要修改哪里的配置文件,当然也可以在搜索框搜索password或者jdbc等关键字,找到设置数据库用户名和密码的地方,修改为自己的密码即可。

2.2.5配置服务,启动项目!

服务的配置不是必须的,但是为了方便我们启动项目之后,知道项目的端口是多少,建议还是配置一下。不然如果人家的banner里或者.md文件里没提到端口是多少的话,那你可就得自己在配置文件里找向项目端口了。

我们在左下角服务里面找到添加服务,添加SpringBoot服务。然后去尝试启动项目,启动完项目就可以看到对应的地址了

我们可以点击右上角的运行,或者找到src/main/java里面的***Application类,点击运行此类中的方法或者运行此类,或者在服务里找到对应的SpringB里的Application(首次运行不适用),右键点击运行。

多种运行方法选择一个即可。

运行完之后,就可以在左下角的服务里看到对应项目的端口了,点击端口就可以快速跳转到对应的网页。

三、Q&A

Q:需要为项目指定jdk

A:点击项目结构,为项目指定jdk版本和java版本,一般是jdk1.8和java8,要与文件的pom文件中中对应,详见2.2.2。

Q:找不到方法

A:检查项目结构中的jdk版本和sdk版本,要与项目匹配。

Q:Loading class `com.mysql.jdbc.Driver’. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver’. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

A:根据提示,把搜索项目中的“com.mysql.jdbc”,改为“com.mysql.cj.jdbc”即可,其实就是配置数据库密码时上边的那句话

Q:启动项目后,在服务内的SpringBoot内看不到对应的端口

A:win+R,输入:

%temp%

这里面都是临时缓存文件,关闭idea,Ctrl+A全选,再delete删除,遇到正在使用删除不了的,点击跳过,为所有项目都选择填过即可(这样还可以顺便清理一点C盘内存)。再次打开idea重启项目。

如果大家有其它关于前后端的问题也可以留言。博主最近也在学相关的知识。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/27318.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分类预测 | Matlab实现CPO-SVM冠豪猪算法优化支持向量机多特征分类预测

分类预测 | Matlab实现CPO-SVM冠豪猪算法优化支持向量机多特征分类预测 目录 分类预测 | Matlab实现CPO-SVM冠豪猪算法优化支持向量机多特征分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现CPO-SVM冠豪猪算法优化支持向量机多特征分类预测&#xff…

not support ClassForName

com.alibaba.fastjson2.JSONException: not support ClassForName : java.lang.String, you can config JSONReader.Feature.SupportClassForName 官方说明中提到默认关闭, 可通过配置开启 JSON.config(JSONReader.Feature.SupportClassForName);

(贪心 跳跃游戏)leetcode 55

题解思路&#xff1a;代码随想录--代码随想录本题题解 本题不考虑每个结点走几步只考虑范围 在nums[0]2&#xff0c;也就是在nums[1]和nums[2]找到最大范围&#xff08;for(int i0;i<cover;i)) nums[1]3,也就是在nums[2]和nums[4]这个区间范围找到最大范围&#xff0c;而因…

Unity中动态切换光照贴图LightProbe的方法

关键代码&#xff1a;LightmapSettings.lightmaps lightmapDatas; LightmapData中操作三张图&#xff1a;lightmapColor,lightmapDir,以及一张ShadowMap 这里只操作前两张&#xff1a; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI;public cl…

leetcode 238. 除自身以外数组的乘积

题目如下 数据范围 使用两个辅助数组分别存从前乘到后面和从后到前后面再计算就行。 &#xff08;f数组没处理好还包含了本不能乘于的数所以要向后移动一位&#xff09;。通过代码 class Solution { public:vector<int> productExceptSelf(vector<int>& n…

以太坊基金会换帅,资本市场砸盘

Vitalik力挺Aya升任EF主席&#xff0c;理想主义冬日发芽&#xff1f; 作者&#xff1a;Wenser&#xff1b;编辑&#xff1a;秦晓峰 出品 | Odaily星球日报&#xff08;ID&#xff1a;o-daily&#xff09; 2 月 27 日&#xff0c;Bybit 15 亿资金被盗事件的最新调查结果将以太坊…

[含文档+PPT+源码等]精品基于Python实现的微信小程序的在线医疗咨询系统

基于Python实现的微信小程序的乡村医疗咨询系统背景&#xff0c;可以从以下几个方面进行阐述&#xff1a; 一、社会背景 医疗资源分布不均&#xff1a;在我国&#xff0c;城乡医疗资源分布不均是一个长期存在的问题。乡村地区由于地理位置偏远、经济条件有限&#xff0c;往往…

【Maven】基于IDEA进行Maven工程的创建、构建

文章目录 一、基于IDEA创建Maven工程1. 概念梳理Maven工程的GAVP2. Idea构建Maven Java SE工程3. Idea构建Maven Java Web工程3.1 创建一个maven的javase工程3.2 修改pom.xml文件打包方式3.3 设置web资源路径和web.xml路径 4. Maven工程项目结构说明 二、基于IDEA进行Maven工程…

Halcon 学习之路 生成棋盘格 set_grayval 算子

gen_imag_const 创建灰度图像 gen_image_const(Image&#xff0c;Type&#xff0c;Width&#xff0c;Height) 算子gen_image_const创建指定大小的图像&#xff0c;图像的宽度和高度由Width和Height决定 Type 像素类型 byte :每像素1字节&#xff0c;无符号&#xff08;0-255&…

一个基于C# Winform开源免费的通用快速开发框架,内置完整的权限架构!

前言 今天大姚给大家分享一个基于C# Winform开源免费&#xff08;GPL-2.0开源协议&#xff09;的通用快速开发框架&#xff0c;内置完整的权限架构&#xff1a;WinformDevFramework。 项目介绍 WinformDevFramework是一个基于C# Winform开源免费&#xff08;GPL-2.0开源协议…

通俗解释机器学习中的召回率、精确率、准确率

先说个题外话&#xff0c;暴击一下乱写博客的人&#xff0c;网络上很多地方分不清准确率和精确率&#xff0c;在这里先正确区分一下精确率和准确率&#xff0c;以及他们的别称。 切入正题 很多人分不清召回率和精确率的区别&#xff0c;即使记住了公式&#xff0c;过段时间还是…

【数据结构】二叉树(门槛极低的系统性理解)

本篇文章将进行图文讲述该种数据结构&#xff01;看完一定不会让你失望&#xff0c;好的文章不需要过多的浮夸&#xff0c;质量就是深得人心的砝码&#xff01;下面我总结了最形象的趣味理解方法&#xff0c;一遍看完终身不忘&#xff01;制作不易&#xff0c;能否一键三连呢&a…

【漫话机器学习系列】114.逻辑 Sigmoid 函数

逻辑 Sigmoid 函数详解 1. 引言 逻辑回归&#xff08;Logistic Regression&#xff09;是机器学习中常用的分类算法&#xff0c;而 Sigmoid 函数 是逻辑回归的核心数学工具。Sigmoid 函数能够将任意实数映射到 (0,1) 之间&#xff0c;因此特别适用于概率估计。在这篇文章中&a…

SpringBoot项目启动报错:PathVariable annotation was empty on param 0.

报错信息 SpringBoot项目启动报错&#xff1a;Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name com.obstetric.archive.feignclient.DictServiceClient: FactoryBean threw exception on object creation; nested excepti…

Java 设计模式:软件开发的精髓与艺

目录 一、设计模式的起源二、设计模式的分类1. 创建型模式2. 结构型模式3. 行为型模式三、设计模式的实践1. 单例模式2. 工厂模式3. 策略模式四、设计模式的优势五、设计模式的局限性六、总结在软件开发的浩瀚星空中,设计模式犹如一颗颗璀璨的星辰,照亮了开发者前行的道路。它…

Unity小功能实现:鼠标点击移动物体

1、功能描述 当玩家点击鼠标时&#xff0c;场景中的物体会移动到鼠标点击的位置。这个功能可以用于控制角色移动、放置物体等场景。 2、实现步骤 创建Unity项目&#xff1a;首先&#xff0c;打开Unity并创建一个新的3D项目。 添加3D物体&#xff1a;在场景中创建一个3D物体&am…

避坑!用Docker搞定PHP开发环境搭建(Mac、Docker、Nginx、PHP-FPM、XDebug、PHPStorm、VSCode)

本次更新主要是对环境版本进行了更新&#xff0c;例如php 7.3.7升级到了7.3.8&#xff0c;另外之前的版本有同学踩了坑&#xff0c;主要是官方docker镜像php:7.3.7-fpm和php:7.3.8-fpm使用了不同版本的debian&#xff0c;后面会提到&#xff0c;请各位同学留意。 因为最近换电脑…

Spring Boot集成Jetty、Tomcat或Undertow及支持HTTP/2协议

目录 一、常用Web服务器 1、Tomcat 2、Jetty 3、Undertow 二、什么是HTTP/2协议 1、定义 2、特性 3、优点 4、与HTTP/1.1的区别 三、集成Web服务器并开启HTTP/2协议 1、生成证书 2、新建springboot项目 3、集成Web服务器 3.1 集成Tomcat 3.2 集成Jetty 3.3 集成…

京东web 详情 cfe滑块分析

声明: 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 逆向分析 data response.json() pri…

电池管理系统(BMS)架构详细解析:原理与器件选型指南

BMS&#xff08;电池管理系统&#xff09;架构详细讲解 从你提供的BMS&#xff08;Battery Management System&#xff09;架构图来看&#xff0c;主要涉及到电池监控模块、通信模块、功率控制模块等部分。下面我将详细讲解该架构的各个功能模块及其工作原理。 1. 电池管理核…