2015-02-25 17 views
8

Theo mặc định, Spring Boot sẽ tìm trong thư mục src/main/webapp của tôi để tìm tệp html của tôi. Tôi có thể thay đổi cài đặt cho Spring Boot ở đâu nếu tôi sử dụng một thư mục khác để đặt các tệp html?Khởi động mùa xuân: định cấu hình để tìm thư mục webapp

Sau đó, các tệp sẽ được gói trong các lọ để triển khai. Có những thứ khác mà tôi cần lo lắng không?

Trả lời

11

Xem các tài liệu: http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-web-applications.html#boot-features-spring-mvc-static-content

Các tài nguyên tĩnh được nạp từ /static, /public, /resources, /META-INF/resources

Sử dụng src/main/webapp không được khuyến khích, nếu bạn đang sử dụng một lọ để triển khai.

Bạn có thể tùy chỉnh mà bằng cách ghi đè các phương pháp addResourceHandlers trong WebMvcConfigurerAdapter

@Configuration 
    public class MvcConfig extends WebMvcConfigurerAdapter { 
     @Override 
     public void addResourceHandlers(ResourceHandlerRegistry registry){ 
      registry.addResourceHandler("/**") 
       .addResourceLocations("/") 
       .setCachePeriod(0); 
     } 
    } 
+20

Tôi nghĩ rằng nêu rõ "Sử dụng' src/main/webapp' không được khuyến khích" có thể được hiểu sai bởi người đọc. Theo tài liệu "Không sử dụng thư mục src/main/webapp * nếu ứng dụng của bạn sẽ được đóng gói dưới dạng jar *", vì vậy bạn cũng nên đề cập đến điều đó. –

+2

Có, dòng đó hoàn toàn gây hiểu nhầm. – csmckelvey

+2

@MaksimSorokin Đã sửa, cảm ơn. –

1

AS nêu trên, jar bao bì bỏ qua webapp nội dung. Nếu bạn vẫn muốn bao gồm các nội dung bên trong webapp thư mục, bạn cần phải xác định này một cách rõ ràng trong maven POM.xml cấu hình như dưới đây -

<build> 
     <resources> 
      <resource> 
       <directory>src/main/webapp</directory> 
      </resource> 
      <resource> 
       <directory>src/main/resources</directory> 
      </resource> 
     </resources> ... 
Các vấn đề liên quan