maven webapp для размещения jsps в /WEB-INF/jsp
я унаследовал веб-приложение, построенное с использованием внутреннего муравья NetBean.
все jsps находятся в:
WEB-INF/jsp
и в интернете.xml имеет жестко закодированные ссылки на /WEB-INF/jsp/somefile.jsp
Как я могу использовать плагин Maven war для размещения JSP там, поддерживая согласованность с текущей структурой ?
мой pom в настоящее время читает:
<warSourceDirectory>${basedir}/web/WEB-INF</warSourceDirectory>
2 ответов
В чем проблема? Давайте посмотрим на стандартную структуру военного проекта:
$ mvn archetype:create -DgroupId=com.mycompany.app \ > -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp ... $ tree my-webapp/ my-webapp/ |-- pom.xml `-- src `-- main |-- resources `-- webapp |-- WEB-INF | `-- web.xml `-- index.jsp 5 directories, 3 files
не нужно ничего настраивать, просто поместите JSPs под src/main/webapp/WEB-INF/jsp
и там вы идете.
EDIT: Я не понимаю, почему у вас есть следующая строка в конфигурации Maven-war-plugin:
<warSourceDirectory>${basedir}/web/WEB-INF</warSourceDirectory>
каково ожидаемое поведение? Почему бы вам не использовать значение по умолчанию ${basedir}/src/main/webapp
?
также обратите внимание, что все в src/main/resources будет "на пути к классам", т. е. все это копируется в my-webapp/WEB-INF/classes при построении войны. Так что это хорошее место для размещения ваших файлов конфигурации, например, log4j.xml / logback.xml, или Spring applicationContext.xml и другие файлы конфигурации Spring, которые вы можете легко ссылаться на classpath: somefile.XML.
что также делает это очень приятным, вы можете настроить фильтры в maven, чтобы он преобразовывал файлы из src / resources, прежде чем он помещает их в файл войны.
Итак, если у вас есть какие-либо файлы конфигурации, кроме web.xml, в src/main/webapp/WEB-INF, подумайте о перемещении их в каталог src/main/resources.