我在 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临时目录。