我是Spring和tomcat的初学者,我知道这个问题:
在tomcat服务器上部署春季引导war文件时,当我想将静态index.html与其一起添加为war时,会遇到问题。
为了使它能够作为war部署,我将其添加到我的应用程序类中:
@SpringBootApplication
@ComponentScan(basePackages = {"com.app"})
@EnableMongoRepositories(basePackages = {"com.app"})
public class MyApp extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(MyApp.class);
}
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}现在应用程序可以工作了,但是index.html (位于src/main/resources下)将不会显示(im获取白标签错误页时会出现“出现意外错误(type=Method不允许,status=405)。
但如果我像这样创造它:
@SpringBootApplication
@ComponentScan(basePackages = {"com.app"})
@EnableMongoRepositories(basePackages = {"com.app"})
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}它向我展示了index.html (但应用程序不能处理来自浏览器的GET请求--我得到了HTTP 404 )--请求的资源不可用。)。
我如何配置它,使它们都能工作?
这是我的pom.xml
<packaging>war</packaging>
<build>
<finalName>myapp</finalName>
</build>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.1.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.8.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<!-- Test -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.jayway.restassured</groupId>
<artifactId>rest-assured</artifactId>
<version>2.7.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>发布于 2016-01-11 21:26:59
在src/main/resources项下
将index.html添加到src/main/resources/public目录
根据弹簧靴的医生
默认情况下,Spring将服务于类路径中名为/static (或/public或/resources或/META/resources)的目录或ServletContext根目录中的静态内容。
https://stackoverflow.com/questions/34731002
复制相似问题