2015-05-06 17 views
10

I documentation of Spring Boot stati:Dovrei usare `src/main/webapp` per pubblicare contenuto statico con Spring Boot?

non si utilizza la directory/webapp src/main se l'applicazione sarà confezionato come un vaso.

Ma sorprendentemente il Spring Boot Sample for static web files sta usando la directory /src/main/webapp. E anche JHipster utilizza la cartella webapp.

Quindi sono confuso. L'avviso nella documentazione di Spring Boot è obsoleto? È ora considerato una buona pratica utilizzare src/main/webapp per servire file statici con le applicazioni jar Spring Boot? E se no, qual è la pratica consigliata adesso quando usi Spring Boot in una configurazione di Maven?

+2

l'app di esempio che si riferisce è confezionata come una guerra, non un barattolo. Guarda il pom: war gyoder

+1

Ok, questo spiega perché l'esempio funziona. Ma ho pensato che uno dei principali punti di forza di Spring Boot è la creazione di un file jar autonomo. Quindi l'esempio è un po 'fuorviante. – asmaier

risposta

0

hi se ho capito la tua domanda quando si sta usando confezione vaso in avvio primavera anni metterà la vostra risorsa in META-INF/risorse ed è possibile utilizzare questo pacchetto vaso in un altro progetto e chiamare risorsa, è possibile spostare webapp nella directory META-INF utilizzando Maven e costruire Gradle

1

da Spring Boot Reference Documentation (sottolineatura mia):

per impostazione predefinita Primavera Boot servirà contenuti statici da una directory chiamata /static (o /public o /resources o /META-INF/resources) nel classpath o dalla radice di ServletContext. Utilizza ResourceHttpRequestHandler da Spring MVC in modo da poter modificare tale comportamento aggiungendo il proprio WebMvcConfigurerAdapter e sovrascrivendo il metodo addResourceHandlers.

In alcuni dei miei progetti (Maven) Attualmente sto usando src/main/resources/static perché è considerato parte del classpath per impostazione predefinita e IDE (come Eclipse) tendono a come questo.