404 при развертывании Grails 3.1.10 войны на Tomcat7 или Tomcat8

Ближайший вопрос о переполнении стека, объясняющий мои симптомы, приведен здесь: как я могу развернуть файл войны Grails 3.0.1 в Tomcat7?

Я нахожусь в процессе обновления приложения Grails 2.3.4 до Grails 3.1.10, и все работает с 'grails run-app'.

Когда я отправляюсь на войну, я получаю только 404 за любой URL.

Война разворачивается без каких-либо сообщений об ошибках в catalina.out.

Журналы доступа tomcat показывают мои попытки доступа. (не проблема Linux?)

Я могу добраться до менеджера tomcat, и менеджер tomcat показывает, что мое приложение работает как истинное. (без ошибок)

Диспетчер показывает myapp-0.1, потому что военный файл был myapp-0.1.war .. пока это нормально.

Я бегу Grails 3.1.10.

Я пробовал против Tomcat 7.0.55, а также 8.0.92.

Я попытался изменить grails.serverUrl в application.groovy для различных значений. Сейчас:

//fix war name after get working
grails.serverUrl = "/myapp-0.1"
System.setProperty("server.contextPath","/myapp-0.1")

Я пробовал выше без "-0.1". (Я был удивлен, узнав, что это необходимо - /questions/22905845/ne-udaetsya-razvernut-fajl-grails-war-v-tomcat-rezultat-404/22905865#22905865)

Я попытался изменить "org.springframework.boo:spring-boot-starter-tomcat" с "compile" на "условии" в файле build.gradle.

Пожалуйста, дайте мне знать, что мне нужно уточнить. Трудно вставить выходные данные журнала и файлы конфигурации. (я за брандмауэром)

1 ответ

Решение

Вы добавляете следующую задачу в ваш build.gradle, он будет называть войну как угодно:

task wrapper(type:Wrapper){
     war.archiveName='myWar.war'
}

Затем при развертывании у него должно быть правильное имя, и вы можете перейти по https://localhost:8080/myWar

Другие вопросы по тегам