使用IntelliJ在webapp运行配置中使用maven覆盖?

Ste*_*iks 11 tomcat overlay intellij-idea magnolia maven

我正在开发一个基于玉兰的网站.我正在使用webapp原型来创建一个新的Web应用程序.使用命令行,我能够生成一个WAR并将其部署在我的容器(Tomcat)中.我然后运行它,它工作正常.

我的下一步是将我的项目结构导入IntelliJ.IntelliJ认为一切都很好,并且能够编译所有内容.我先测试了maven clean,然后让IntelliJ完成其余的工作(重建项目).

最后一步是让它在我的容器中运行.我之前为网络应用设置了运行配置(他们不使用战争叠加),他们工作得很好.在这种情况下,我像以前一样设置它并指向我的爆炸webapp工件.

一旦我运行tomcat,它就找不到我的webapp.我发现覆盖层还没有合并到项目的目标目录中(通常就是在进行maven安装时).然而,IntellJ在我的项目中创建了一个覆盖目录,并在那里解压缩(overlay/super)WAR文件.

当我自己进行maven安装时,我得到它的工作,然后在IntelliJ中运行Tomcat.这是显而易见的,因为现在所有需要的文件都在我的目标目录中(例如web.xml):).

我想要的是: - IntelliJ知道当它运行Tomcat时,它应该像"mvn install"或"mvn package"那样准备目标目录.

它的作用: - 它介于两者之间.它确实创建了一个目标目录,它确实从webapp项目中复制资源.它不会覆盖任何WAR依赖项,因此webapp目标目录不完整.

任何人有任何解决这个问题的技巧?

Ste*_*iks 10

我发现检查运行配置中的"运行maven目标"复选框,并设置mvn包确实使它工作.