在eclipse中创建项目后更改Maven Archetype?

时间:2013-04-22 07:58:42

标签: eclipse maven m2eclipse maven-archetype

我用maven-archetype-quickstart创建了一个maven项目。我已开始编码,现在我想将原型更改为maven-archetype-webapp,以使其成为动态Web项目。我如何实现这一目标?

2 个答案:

答案 0 :(得分:7)

Archetypes仅用于创建项目(即初始化配置,源文件夹......),之后不再使用。因此,如果您想要改变您的项目性质,您必须“手动”完成。

在您的情况下,您似乎只需要更改pom.xml,将包类型更改为war并在IDE中继续“Maven更新项目”,以便maven插件更新配置。

答案 1 :(得分:2)

我最近在Google上搜索并迷失了这篇文章。我有一种方法可以使用 Eclipse IDE 为Web应用程序生成web.xml和目录结构。在我分享这些内容之前,让我们先说明一下我正在使用的Eclipse(如果您使用的是任何旧版本,则可能不具备此功能)。

enter image description here

我假设您使用OP发布的Maven Project创建了maven-archetype-quickstart。它基本上是一个jar应用程序。我们希望将其更改为web应用程序。过程如下:

  1. 右键单击项目>属性>项目构面
  2. 选择Convert to faceted form...
  3. 选中Dynamic Web ModuleJava框。您可能要选择所需的版本,请确保它们兼容。我为3.0(Servlet规范)和Dynamic Web Module选择了版本Java 1.8

enter image description here

  1. 现在单击Apply and Close。这将在您的项目中产生很多东西。
  2. 如果您还没有进入,请立即切换到Web perspective。您可以按照以下步骤进行操作: 窗口>透视图>打开透视图>其他> Web
  3. 现在您将可以看到我们在步骤4中对项目结构进行了哪些更改。它已经创建了Web应用程序所需的目录结构。但是web.xml文件尚未生成。接下来,我们会做。
  4. 右键单击Deployment Descriptor : <your project name>>生成部署描述符存根。它将生成web.xml文件。

enter image description here

  1. 最后将pom.xml中的包装从罐子改为战争:<packaging>war</packaging>
  2. 现在您可以去了。由于我正在使用spring-boot,并且它需要webapp文件夹而不是WebContent,因此我手动对其进行了重命名并将其移至src\main内,然后添加了webapp作为source folder

因此,基本上,我们必须手动完成所有操作。我只是让Eclipse在这里做一点工作。