从0到1的springboot项目搭建到打包

环境

jdk + maven + idea

搭建maven项目

如果你想管理包的路劲就改下引用的maven仓库路径(也可以不用改就跳过)

找到你安装的maven路径 --> 在apache-maven-3.9.14\conf路径下面找到settings.xml并打开 --> 搜索localRepository在下面映入一行并加上你要保存的路径

进入idea --> 打开设置

引入springboot的依赖

使用maven创建后的目录结构为

打开pom.xml

1.继承### spring-boot-starter-parent (父级依赖)

xml 复制代码
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>3.4.4</version> <!-- 请使用官方最新稳定版本 -->
</parent>
  1. 引入spring-boot-starter-web
xml 复制代码
<!-- Web 应用起步依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
  1. 引入spring-boot-starter-test
xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>
  1. maven打包的依赖
xml 复制代码
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

完整代码

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>demo</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.4.4</version> <!-- 请使用官方最新稳定版本 -->
    </parent>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <!-- Web 应用起步依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- 测试起步依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

<!--    打包的依赖-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

加入后刷新下maven

一般改了pom右上角机会出现一个刷新的图标,点下就行

如果没有的话就在右侧的导航栏找到M(maven)的标志,点开然后刷新就行

创建启动类并测试

在src/main/java下面创建一个目录,然后在这个目录下面创建一个启动类

如图:

代码:

typescript 复制代码
package cn.guo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class, args);
    }
}

启动后没有报错说明没有问题了,也可以写一个get请求试试

测试
kotlin 复制代码
package cn.guo.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/v1/pu/demo")
public class DemoController {

    @GetMapping("/test")
    public String demo1(){
        return "hello";
    }
}

重启后在浏览器访问http://localhost:8080/v1/pu/demo/test

页面展示有hello就成功了

配置端口

现在我们项目默认的是8080,你想修改的话就在resources目录下面新建application.yml或者application.properties(看个人习惯)

yml如图:(注意:缩进以及":"后面都会有一个空格在进行赋值)

properties代码就是:

ini 复制代码
server.port=80

然后重启项目访问http://localhost/v1/pu/demo/test (80是默认端口可以省略,你修改其他的就需要加上)

打包

之前已经装了打包的依赖,然后我们在右侧的导航栏找到maven的标志M --> 展开项目 --> 展开生命周期 点击package或者install进行打包就行

然后你左侧项目的导航栏里有一个target目录,展开就会发现一个jar包(这个就是打包好的项目)

测试jar包能不能用的话就在黑窗口进入你jar包的目录

然后输入 java -jar demo-1.0-SNAPSHOT.jar(注意端口是否被占用)

没有报错就成功了,或者访问下写的测试接口

相关推荐
小芝麻咿呀2 小时前
边缘计算网关-EG8200Mini导轨版
java·人工智能·边缘计算
Mr_pyx2 小时前
【LeetCodeHOT100】 160. 相交链表 —— Java多解法详解
java·数据结构·链表
曹牧2 小时前
Java:将XML字符串上传到FTP服务器
java·开发语言
存在的五月雨2 小时前
Mqtt发送信息报错
java
杨凯凡2 小时前
【016】集合框架总览:List/Set/Map 与线程安全
java·数据结构·list
Predestination王瀞潞2 小时前
Java EE3-我独自整合(第六章:Spring AOP 工作流程与切入点表达式)
java·spring·java-ee
景庆1972 小时前
vscode启动springBoot项目配置,激活环境
java·开发语言·vscode
小则又沐风a2 小时前
Linux使用指南和基础指令(1)
java·linux·运维
三千星2 小时前
Java开发者转型AI工程化Week 2:从核心能力到生产就绪
java·ai编程