【发布时间】:2018-07-28 09:41:36
【问题描述】:
我正在学习使用 Spring Boot 构建基于 Web 的应用程序的教程,并且我正在使用 Spring Tool Suite。
我已经创建了一个基本实体,它对应的 JPA 存储库、服务 POJO、一个控制器。
这是 pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.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-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</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>
问题:
按照教程,当项目为 Run As -> Spring Boot App 时,tomcat server 启动,并在控制台显示相应的日志。
但是,当我以相同的方式运行它(Spring Boot App)时,我看不到任何 Tomcat 服务器正在运行。并且该过程终止。如果我访问 localhost:8080,它显然显示我无法访问此站点。
我已经运行了 Maven -> Clean 和 Maven -> 安装。
我在这里想做什么?
更新:
我删除了 .m2 文件夹,Maven -> Clean and Maven -> Install。退出 STS,再次运行。瞧,一切都像魅力一样。没有一个错误。魔法?我不知道。
【问题讨论】:
-
第一个问题好!它是可以理解的,你试图自己解决它,你清楚地展示了你尝试了什么。大多数第一个问题都不是很好。
-
问题是:你到底是通过哪个命令运行的?
-
@khmarbaise 我在问题陈述中提到了它。运行方式 -> Spring Boot 应用程序。
-
这是第一个..但是你写的第二个:
But, when I run it, I don't see any Tomcat server running....所以问题是你试图将它作为一个 Java 应用程序运行它周围的整个部分(缺少 Spring boot ) 导致问题。这是通过java -jar SpringBootAppPackaged.jar(在targetdirector 中创建了两个jar 文件)和尝试运行另一个不包含spring boot 启动器部分的jar 文件的区别。... -
@khmarbaise 我认为这暗示我将它作为 Sprint Boot 应用程序运行。将编辑问题。
标签: maven spring-boot tomcat