vs code 运行第一个简单的 java maven springboot 项目

vs code 运行第一个简单的 java maven springboot 项目


1. 首先去 Visual Studio Code 官网下载并安装,安装过程可以选择语言;


2.安装完成之后,启动应用.

2.1 首先配置本地环境「 Ctrl + , 」:

vs code 运行第一个简单的 java maven springboot 项目_第1张图片
基本配置如图所示,其中「用户设置」为全局设置,「工作区设置」作用域为本项目,箭头所指为必须配置的:
vs code 运行第一个简单的 java maven springboot 项目_第2张图片

2.2 配置本地 maven 镜像仓库,推荐阿里仓库,修改 settings.xml:

<mirrors>
    <mirror>
        <id>alimavenid>
        <name>aliyun mavenname>
        <url>http://maven.aliyun.com/nexus/content/repositories/central/url>
        <mirrorOf>centralmirrorOf>
    mirror>
mirrors>

3. 扩展插件,下载完重新加载或重启以重新加载插件:

Java 相关插件主要有:

1. Language support for Java ™ for Visual Studio Code
2. Java Extension Pack
3. Debugger for Java
4. Java Test Runner
5. Maven for Java,
6. Spring Boot Extension Pack 
7. Spring Boot Support

个人推荐:

1. Lombok Annotations Support for VS Code. (简化POJO)

4. VS Code 创建第一个 Spring Boot 项目

4.1 创建项目
1. 打开命令选项板「Ctrl + Shift + P」;
2. 键入Spring Initializr 开始生成Maven项目;
3. 按照向导执行,选择依赖包,我在这选了 devTools(热部署扩展包)和 web两个。

创建完成,项目目录如下图:
vs code 运行第一个简单的 java maven springboot 项目_第3张图片

4.2 创建文件HelloController.java用于测试,代码如下:

package com.example.demo.controller;

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

@RestController
@RequestMapping("/index")
public class HelloController {

    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }

}

5. 配置启动项,点击「调试」界面中下拉框 -> 「添加配置」按钮,VS Code 会给你自动配好。

我的配置截图如下 :
vs code 运行第一个简单的 java maven springboot 项目_第4张图片


6.按下绿色的启动按钮来启动项目,启动成功效果图如下:

vs code 运行第一个简单的 java maven springboot 项目_第5张图片

vs code 运行第一个简单的 java maven springboot 项目_第6张图片


7. 遇到的坑:

7.1 第一次启动报错:java.lang.NoClassDefFoundError: ch/qos/logback/core/joran/spi/JoranException
原因:缺少依赖包。
解决方案 - 加入如下依赖:

   ch.qos.logback
   logback-classic
   1.1.3
   
      
         slf4j-api
         org.slf4j
      
   
   provided

7.2 第二次启动报错:java.lang.AbstractMethodError: ch.qos.logback.classic.pattern.EnsureExceptionHandling.process(Lch/qos/logback/core/Context;Lch/qos/logback/core/pattern/Converter;)V
原因:logback-classic和logback-core的版本必须一致。
解决方案 - 完善依赖包,使logback-classic和logback-core的版本保持一致,exclusion作用为屏蔽自己logback-classic的版本。最终依赖如下:
<dependency>
    <groupId>ch.qos.logbackgroupId>
    <artifactId>logback-classicartifactId>
    <version>1.1.3version>
    <exclusions>
        <exclusion>
            <artifactId>slf4j-apiartifactId>
            <groupId>org.slf4jgroupId>
        exclusion>
        <exclusion>
            <groupId>ch.qos.logbackgroupId>
            <artifactId>logback-coreartifactId>
        exclusion>
    exclusions> 
    <scope>providedscope>
dependency>
<dependency>
    <groupId>ch.qos.logbackgroupId>
    <artifactId>logback-coreartifactId>
    <version>1.1.3version>
dependency>

你可能感兴趣的:(技术)