使用 MVN 命令部署 Maven 应用程序时出现问题



我在 eclipse 下有一个 maven 应用程序。jsp 页面和 WEB-INF 文件夹位于路径 NomeMiaApplicazione\src\main\webapp 下。我运行这些命令:mvn干净,MVN Eclipse:Eclipse 和 MVN 在应用程序的根文件夹下编译,在所有三种情况下,构建都成功。但是当我访问文件夹(进入工作区)时.metadata.plugins\org.eclipse.wst.server.core\tmp2\wtpwebapps\NomeMiaApplicazione,没有 JSP 页面。这个问题的解决方案是什么?谢谢!

有必要

澄清您使用的命令的作用及其对 Eclipse 的影响。

mvn eclipse:eclipse 命令创建 Eclipse 项目文件,以便省去配置新项目和标识其所有源的麻烦。此命令还等效于 使用 m2e Eclipse 插件从现有 Maven 项目创建新的 Eclipse 项目。另请参阅此页面有关eclipse:eclipse命令的信息。话虽如此,您只需要运行一次这样的命令,然后将生成的项目导入到 Eclipse 中。

其次,mvn compile将源文件构建到NomeMiaApplicazione根文件夹的target目录中。此命令不以任何方式涉及 Eclipse。此外,Web 资源仍未打包。 要打包它们,您需要发出 mvn package :然后您将在 target 下再次找到<artifact>-<version>.war文件,并在 target<artifact>-<version> 下找到预打包的内容。请注意,为了说明webapp内容,您的Maven包装必须是 war 型。检查pom.xml中是否有<packaging>标记。

最后,部署仍然是另一个问题。如果你确实需要将.war文件从目标目录移动到其他地方(即servlet容器的自动部署文件夹),你可以配置Maven部署插件并发出mvn deploy。我宁愿建议你在SO中搜索部署战争日食和/或部署战争专家,因为有很多相关的东西。在第一种情况下,您将了解如何使用 Eclipse 作为部署工具,而第二种情况则利用命令行来提供更可移植/灵活的部署过程。

这是因为mvn compile在Maven默认生命周期compile阶段结束。做mvn package然后检查。顺便说一下,默认的Maven输出目录是target所以宁愿检查它而不是WTP临时目录。

最新更新