我使用以下教程学习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应用程序,但localhost不起作用。 (港口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>
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);
}
}
根据视频,localhost应该在运行应用程序时显示白名单错误,但它根本不会运行。
任何帮助将不胜感激,谢谢!
答案 0 :(得分:4)
我建议你从一开始就开始你的项目。要创建有效的spring-boot
项目,您可以为web
启动器应用程序提供非常好的基于Web的生成器。
对于具有嵌入式tomcat的Web应用程序,您应该使用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>
看起来应该是这样的:
localhost:8080
您的应用程序应该正常启动,并且tomcat会监听 int wave[] = {};
for(int i = 0; i < 4000; i = i + 100){
//add to wave[] i
}
。
答案 1 :(得分:3)
解决方案::将Web Starter依赖项添加到pom.xml中以实现Maven
无需创建新应用。只需将此启动器依赖项更改为starter-web依赖项:
入门
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
入门网站
<dependency>
groupId>org.springframework.boot</groupId>
artifactId>spring-boot-starter-web</artifactId>
</dependency>
答案 2 :(得分:0)
默认情况下,STS可能使用Tomcat版本7,如果您碰巧使用版本8,则需要在pom.xml中指定相同的内容
<properties>
<tomcat.version>8.0.47</tomcat.version>
</properties>
答案 3 :(得分:0)
您应该尝试以sudo
运行spring-bootsudo mvn spring-boot:run
答案 4 :(得分:0)
我也面临同样的问题。尝试通过在STS中选择Spring Boot启动程序项目来创建Spring Boot应用程序。 右键单击STS-> New-> Spring Starter Project->给定名称,然后单击Next->选择Web并在Web上打勾,然后搜索Dev Tools并在Dev Tools上打勾,然后单击Finish
现在单击项目并以Spring Boot Application身份运行。
答案 5 :(得分:0)
在application.properties中,将server.port = 8080
答案 6 :(得分:0)
我遇到了类似的问题。我也遵循JavaBrains SpringBoot示例。这是我所做的: 我使用STS工具创建了一个全新的Spring Boot项目,并包含了与您提供的代码相同的代码,并且有效!
答案 7 :(得分:0)
您需要告诉springboot您必须在哪里扫描参考类
@SpringBootApplication
@ComponentScan(basePackages= {"com.testbean.controller", "com.testbean.model", "com.testbean.service"})
public class DemoApplication {
答案 8 :(得分:0)
使用@ComponentScan(“ io.javabrains”)并提及存在Controller的软件包。例如。
@SpringBootApplication
@ComponentScan("io.javabrains")
public class CourseApiApp {
public static void main(String[] args) {
SpringApplication.run(CourseApiApp.class, args);
}
}
在Spring Boot应用程序中,默认情况下,spring在同一包中搜索具有@SpringBootApplication批注的组件。
答案 9 :(得分:0)
按照本教程设置 JavaJDK、Tomcat 和 Maven:https://jeromejaglale.com/doc/spring4_tutorial/installation_macos
下一步移至终端应用程序:输入 cd root_project
并运行 sudo mvn spring-boot:run