Używam SpringBoot 1.3.5 z maven.Springboot - DevTools - RestController nie zawsze mapowany podczas odbudowy projektu
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.5.RELEASE</version>
</parent>
I DevTools
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
Używam IntelliJ IDEA 2016.2, poprzednio 2014 z tym samym problemem.
Używam mojej aplikacji Springboot od Intellij Idea, pierwsze uruchomienie Wszystko jest dobrze załadowane i działa, mogę uzyskać dostęp do moich stron statycznych i moich 2 Kontrolerów Rest.
2016-08-18 15:27:58.771 INFO 26626 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot[email protected]469d0c02: startup date [Thu Aug 18 15:27:57 CEST 2016]; root of context hierarchy
2016-08-18 15:27:58.789 INFO 26626 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/authentication/introspect],methods=[GET]}" onto public com.myapp.models.TokenIntrospection com.myapp.resources.AuthenticationResources.introspectToken(java.lang.String)
2016-08-18 15:27:58.790 INFO 26626 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/configuration],methods=[GET]}" onto public com.myapp.models.AppConfiguration com.myapp.resources.ConfigurationResources.getConfiguration()
2016-08-18 15:27:58.792 INFO 26626 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2016-08-18 15:27:58.793 INFO 26626 --- [ restartedMain] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
Bo po prostu „Make Project” nie działa dobrze dla przeładowania statycznej, używam „Odbuduj projekt”, a czasem, kiedy aplikacja restart, nie mam moje kontrolery odwzorowany, czasami brakuje jednego, czasami obydwaj brakuje.
nie mam żadnego pojęcia o tym :(
EDIT
@Morfic rozwiązań nie działa, więc użyłem serwer lokalny IntelliJ służyć zawartość statycznych i łykać-livereload zamiast . wiosna-dev-tools
miałem tylko zarządzać REST wzywa w JS, gdy jestem w trybie dev ponieważ zasoby REST są na localhost: 8080, ale moim Stati cs na localhost: 63342 i włącz CORS w moim Springboot (z flagą w pliku właściwości, aby włączyć CORS lub nie).
@Configuration
public class CorsConfig extends WebMvcConfigurerAdapter {
@Value("${cors.enabled}")
private boolean corsEnabled;
@Override
public void addCorsMappings(CorsRegistry registry) {
super.addCorsMappings(registry);
if(corsEnabled) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("GET", "PUT", "POST", "DELETE", "OPTIONS")
.allowedHeaders("Origin", "X-Requested-With", "Content-Type", "Accept", "Authorization")
.allowCredentials(true)
.maxAge(3600L);
}
}
}
Więc pytanie wciąż czeka na rozwiązanie roboczej.
Wahou bardzo ładne wyjaśnienie, dzięki. Jak zapewne domyślacie się, nie mogę odtworzyć/zmodyfikować pliku za każdym razem, gdy chcę przeładować mój projekt :( I nie wyjaśniłem tego, ale używam Springboot z 2 kontrolerami odpoczynku i muszę często odbudowywać pliki statyczne. – Titmael
I próbował tego, ale nie zmienił problemu: http: // stackoverflow.com/a/36839483/1243048 – Titmael
@Titmael moja sugestia jest najprostsza i najbezpieczniejsza z możliwych, ponieważ wszystko powinno być już skompilowane i dostępne podczas tworzenia/edycji/usuwania pliku. Niestety z tego, co widziałem, nie jest to możliwe za pośrednictwem Mavent, ponieważ IJ nie wywołuje go dla funkcji budowania, ale prawdopodobnie może być nieco zautomatyzowane, aby utworzyć artefakt na kompilacji i skopiować plik wyzwalacza za pomocą docelowego Anta, jeśli Jestem zainteresowany. – Morfic