无法在 Spring Boot 应用程序(Tomcat 服务器)中运行 localhost

Nav*_*shi 1 tomcat pom.xml maven spring-tool-suite spring-boot

我一直在使用以下教程学习 Spring:https : //www.youtube.com/playlist?list=PLqq-6Pq4lTTbx8p2oCgcAQGQyqN8XeA1x

我创建了一个 Maven 项目,并在参考这些视频时尝试运行 Spring Boot 应用程序:

https://www.youtube.com/watch?v=E7_a-kB46LU&index=9&list=PLqq-6Pq4lTTbx8p2oCgcAQGQyqN8XeA1x

我试图在 Tomcat 服务器上运行我的 Spring 应用程序,但本地主机不起作用。(端口 8080)

我的 pom.xml 看起来像这样:

<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>io.javabrains.springbootquickstart</groupId>
  <artifactId>course-api-new</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>Java Brains Course API</name>

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.4.2.RELEASE</version>
  </parent>

  <dependencies>
       <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
       </dependency>
  </dependencies>

  <properties>
        <java.version>1.8</java.version>
  </properties>

</project>
Run Code Online (Sandbox Code Playgroud)

CourseApiApp.java :

package io.javabrains.springbootstarter;

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

@SpringBootApplication
public class CourseApiApp {

    public static void main(String[] args) {
        SpringApplication.run(CourseApiApp.class, args);

    }

}
Run Code Online (Sandbox Code Playgroud)

根据视频 localhost 在运行应用程序时应该显示白名单错误,但它根本不运行。

任何帮助将不胜感激,谢谢!

Pat*_*ick 9

我建议你从头开始你的项目。要创建一个有效的spring-boot项目,您有一个非常好的基于 Web 的生成器,用于spring-boot启动应用程序。

对于带有嵌入式 tomcat 的 Web 应用程序,您应该使用webproject。

在此处输入图片说明

使用STS您可以通过选择创建相同的new -> spring starter project

将出现一个向导,您可以选择您的项目信息:

在此处输入图片说明

然后在第二步中依赖:

在此处输入图片说明

生成项目后,您pom.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>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>demo</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <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>
Run Code Online (Sandbox Code Playgroud)

您的应用程序应该正常启动并且 tomcat 监听localhost:8080.

编辑 起动器只有一个新设计:

在此处输入图片说明


DeV*_*DeV 7

解决方案:为 maven 添加 web starter 依赖到 pom.xml

无需创建新应用程序。只需将此启动器依赖项更改为启动器-web 依赖项:


起动机

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

入门网站

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
Run Code Online (Sandbox Code Playgroud)