`
zscomehuyue
  • 浏览: 411680 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用Maven2快速创建项目

阅读更多
使用Maven2快速创建项目
源地址:http://www.intellij.org.cn/portal/index.php?option=com_content&task=view&id=26&Itemid=28
1、构建单个工程
Maven2在项目管理方面影响越来越大,很多项目都使用Maven2。下面我们就介绍如何使用Maven2快速创建项目原型,然后在此基础上进行项目开发。下面我们就看一下如何使用Maven2创建典型的三类项目:
普通的Java项目,如基础包等:
   mvn archetype:create   -DgroupId=com.yourcompany  -DartifactId=myproject  -DarchetypeArtifactId=maven-archetype-quickstart
普通的Web项目,如一个Web项目:
    mvn archetype:create  -DgroupId=com.yourcompany -DartifactId=myproject  -DarchetypeArtifactId=maven-archetype-webapp
Appfuse中的Struts 2.0项目:
    mvn archetype:create -DarchetypeGroupId=org.appfuse -DarchetypeArtifactId=appfuse-basic-struts -DremoteRepositories=http://static.appfuse.org/repository -DarchetypeVersion=2.0-m4-SNAPSHOT -DgroupId=com.mycompany -DartifactId=myproject
使用上述命令后,你可以很快捷地生成你想要的项目原型。接下来我们只需使用下面命令,生成IDEA的项目文件,然后打开就可以在IDEA下进行项目开发啦。
     mvn idea:idea -DdownloadSources=true -DdownloadJavadocs=true -DjdkLevel=1.5
当pom.xml文件发生变化时,我们只需使用下面命令重新生成module文件即可,新生成的module文件会和原来module文件进行很好的合并,通常是依赖的package发生变化啦。
    mvn idea:module

2、构建Maven父子工程

1. 先单独构建各模块为一个独立的项目。
jar项目:
Dos代码

   1. mvn archetype:create -DgroupId=org.sonatype.mavenbook.weather -DartifactId=simple-weather 



war项目:
Dos代码

   1. mvn archetype:create -DgroupId=org.sonatype.mavenbook.web -DartifactId=simple-webapp  
   2. -DpackageName=org.sonatype.mavenbook -DarchetypeArtifactId=maven-archetype-webapp 



2. 构建父项目,并将各子模块文件拷贝到父项目路径下。
Dos代码

   1. mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch06 -DartifactId=simple-parent  
   2. -DpackageName=org.sonatype.mavenbook -DarchetypeArtifactId=maven-archetype-webapp 



3. 修改父项目pom.xml与各子模块pom.xml配置对应关系。

父项目的pom.xml

<modelVersion>4.0.0</modelVersion>
<groupId>org.sonatype.mavenbook.ch06</groupId>
<artifactId>simple-parent</artifactId>
<packaging>pom </packaging>
<version>1.0</version>
<name>simple-parent Maven Webapp</name>
<url>http://maven.apache.org</url>
<modules>
<module>simple-weather</module>
<module>simple-webapp</module>
</modules >



子项目的pom.xml

<parent>
        <groupId>com.your-company.xxxx</groupId>
        <artifactId>xxxx</artifactId>
        <version>1.0</version>
        <relativePath>../pom.xml</relativePath>
</parent>

4. 在父项目路径下执行:mvn eclipse:m2eclipse

5.在配有m2eclipse 插件的eclipse中导入父项目路径下的项目,导入为m2eclipse project。

------------------------------------------------------------------------------------------------------------------
mvn  archetype:create -DgroupId=org.cjj.site -DartifactId=org.cjj.site  -DpackageName=org.cjj.site -DarchetypeArtifactId=maven-archetype-webapp
重要的
Script代码
archetypeArtifactId
不是吗?
但是,当我们创建spring项目或者struts项目,到哪里去查他们的archetypeArtifactId呢?
我google了一下,发现一个好资源:http://cwiki.apache.org/confluence/display/WW/Struts+2+Maven+Archetypes
呵呵,今天发现原来可以这样:
Script代码
mvn archetype:generate
接下来的事情,很舒服,选择一个类别吧.
Java代码
E:\workspace>mvn archetype:generate
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Default Project
[INFO]  task-segment: [archetype:generate] (aggregator-style)
[INFO] ------------------------------------------------------------------------
[INFO] Preparing archetype:generate
[INFO] No goals needed for project - skipping
[INFO] Setting property: classpath.resource.loader.class => 'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
[INFO] Setting property: velocimacro.messages.on => 'false'.
[INFO] Setting property: resource.loader => 'classpath'.
[INFO] Setting property: resource.manager.logwhenfound => 'false'.
[INFO] [archetype:generate {execution: default-cli}]
[INFO] Generating project in Interactive mode
[INFO] No archetype defined. Using maven-archetype-quickstart (org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
Choose archetype:
1: internal -> appfuse-basic-jsf (AppFuse archetype for creating a web application with Hibernate, Spring and JSF)
2: internal -> appfuse-basic-spring (AppFuse archetype for creating a web application with Hibernate, Spring and Spring MVC)
3: internal -> appfuse-basic-struts (AppFuse archetype for creating a web application with Hibernate, Spring and Struts 2)
4: internal -> appfuse-basic-tapestry (AppFuse archetype for creating  a web application with Hibernate, Spring and Tapestry 4)
5: internal -> appfuse-core (AppFuse archetype for creating a jar application with Hibernate and Spring and XFire)
6: internal -> appfuse-modular-jsf (AppFuse archetype for creating a modular application with Hibernate, Spring and JSF)
7: internal -> appfuse-modular-spring (AppFuse archetype for creating  a modular application with Hibernate, Spring and Spring MVC)
8: internal -> appfuse-modular-struts (AppFuse archetype for creating  a modular application with Hibernate, Spring and Struts 2)
9: internal -> appfuse-modular-tapestry (AppFuse archetype for  creating a modular application with Hibernate, Spring and Tapestry 4)
10: internal -> maven-archetype-j2ee-simple (A simple J2EE Java application)
11: internal -> maven-archetype-marmalade-mojo (A Maven plugin development project using marmalade)
12: internal -> maven-archetype-mojo (A Maven Java plugin development project)
13: internal -> maven-archetype-portlet (A simple portlet application)
14: internal -> maven-archetype-profiles ()
    15: internal -> maven-archetype-quickstart ()
16: internal -> maven-archetype-site-simple (A simple site generation project)
17: internal -> maven-archetype-site (A more complex site project)
18: internal -> maven-archetype-webapp (A simple Java web application)
19: internal -> jini-service-archetype (Archetype for Jini service project creation)
20: internal -> softeu-archetype-seam (JSF+Facelets+Seam Archetype)
21: internal -> softeu-archetype-seam-simple (JSF+Facelets+Seam (no persistence) Archetype)
22: internal -> softeu-archetype-jsf (JSF+Facelets Archetype)
23: internal -> jpa-maven-archetype (JPA application)
24: internal -> spring-osgi-bundle-archetype (Spring-OSGi archetype)
25: internal -> confluence-plugin-archetype (Atlassian Confluence plugin archetype)
26: internal -> jira-plugin-archetype (Atlassian JIRA plugin archetype)
27: internal -> maven-archetype-har (Hibernate Archive)
28: internal -> maven-archetype-sar (JBoss Service Archive)
29: internal -> wicket-archetype-quickstart (A simple Apache Wicket project)
30: internal -> scala-archetype-simple (A simple scala project)
31: internal -> lift-archetype-blank (A blank/empty liftweb project)
32: internal -> lift-archetype-basic (The basic (liftweb) project)
33: internal -> cocoon-22-archetype-block-plain ([http://cocoon.apache.org/2.2/maven-plugins/])
34: internal -> cocoon-22-archetype-block ([http://cocoon.apache.org/2.2/maven-plugins/])
35: internal -> cocoon-22-archetype-webapp ([http://cocoon.apache.org/2.2/maven-plugins/])
36: internal -> myfaces-archetype-helloworld (A simple archetype using MyFaces)
37: internal -> myfaces-archetype-helloworld-facelets (A simple archetype using MyFaces and facelets)
38: internal -> myfaces-archetype-trinidad (A simple archetype using Myfaces and Trinidad)
39: internal -> myfaces-archetype-jsfcomponents (A simple archetype for create custom JSF components using MyFaces)
40: internal -> gmaven-archetype-basic (Groovy basic archetype)
41: internal -> gmaven-archetype-mojo (Groovy mojo archetype)
Choose a number:  (1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/27/28/29/30/31/32/33/34/35/36/37/38/39/40/41)  15: :
选择41个类型,有你所要的吗?选择一个数字即可.
下面就剩下你根据提示来填空了.




将maven2创建的web项目转为myEclipse项目
关键字: maven2, myeclipse

在配置好maven2的基础上:

1.maven2创建web工程:

mvn archetype:create -DgroupId=com.myWork -DartifactId=Work -DarchetypeArtifactId=maven-archetype-webapp

2.将Maven项目转为Eclipse项目,具体操作为将dos命令窗口切换到Maven项目的目录下,

输入命令: mvn eclipse:eclipse
3. 进入eclipse,将这个项目导入工作空间
4. 在该项目上点右键Maven->Enable
5. 在该项目上点右键Build Path->Configure Build Path->Java Build Path->Libraries->去掉Maven添加的变量路径
6. 在该项目上点右键MyEclipse->Add Web Capabilities->修改Web root地址(点【浏览】按钮指定为当前工作空间下的src/main/webapp文件夹)
7. 配置完毕,可以用MyEclipse插件配置服务器等开始正常开发,自动部署,调试等操作了。


分享到:
评论

相关推荐

    使用Maven构建多模块项目

    使用Maven Archetype插件可以快速创建一个多模块项目模板。首先,创建一个父项目,然后在父项目的pom.xml中添加子模块的定义,最后在父项目目录下为每个子模块生成对应的目录结构和基本的pom.xml。 4. 依赖管理: ...

    idea使用maven创建的web项目

    在创建项目后,Idea会自动生成基本的Maven目录结构,包括src/main/java(存放源代码)、src/main/resources(存放资源文件)、src/test/java(存放测试代码)等。此时,你需要在pom.xml文件中添加所需的依赖,例如...

    Eclipse使用Maven无法建web项目

    接下来,描述中的"选择本地下载文件,并在文件中搜索mava-archetype-webapp选择1.3"是指使用Maven的archetype插件来创建Web项目。Maven archetype是预先定义好的项目模板,可以快速生成符合特定标准的项目结构。`...

    安装maven和使用maven创建项目

    2. 使用 Maven Archetypes:Maven 提供了一组预定义的模板(Archetypes),可以快速生成特定类型的项目结构。例如,你可以运行 `mvn archetype:generate` 并按照提示选择一个 Archetype 来创建新项目。 3. IDE 插件...

    使用Maven搭建S2SH工程详解一:使用Maven创建struts2工程

    【使用Maven搭建S2SH工程详解一:创建Struts2工程】 在Java Web开发中,S2SH架构(Struts2 + Spring + Hibernate)是一种常见的应用框架组合,用于构建高效、灵活的企业级应用程序。本篇文章主要讲解如何利用Maven...

    maven2快速入门教程

    ** Maven2 快速入门教程 ** Maven是Apache软件基金会开发的一款项目管理和集成工具,主要应用于Java项目。Maven2是Maven的第一个稳定版本,它极大地简化了项目的构建、依赖管理和文档生成过程。本教程将带你一步步...

    mavenWeb空项目

    【标题】"mavenWeb空项目"所涉及的知识点主要...综上所述,"mavenWeb空项目"是一个包含Java Web开发基础的项目模板,利用Maven进行构建管理和单元测试,为开发者提供了一个良好的起点,便于快速开发和迭代Web应用程序。

    maven搭建ssm项目

    在本文中,我们将深入探讨如何使用Maven搭建一个SSM项目,并了解这个过程中涉及的关键知识点。 首先,Maven是一个项目管理和依赖管理工具,它允许开发者通过在`pom.xml`文件中声明项目依赖来自动化构建过程。在...

    maven2完全使用手册

    创建第一个Maven2项目,可以使用`mvn archetype:create`命令,指定`groupId`和`artifactId`。例如: ``` mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-app ``` Maven2的常用命令包括: - `...

    IntelliJ IDEA上创建Maven Spring MVC项目

    在本文中,我们将深入探讨如何使用IntelliJ IDEA创建一个基于Maven的Spring MVC项目。首先,我们需要了解几个核心概念: 1. **IntelliJ IDEA**:这是一款强大的Java集成开发环境(IDE),广泛用于Java应用程序的...

    maven2 java项目管理 工具 测试 框架

    Maven Archetypes是预定义的项目模板,可以快速创建新项目的起点,避免从零开始配置。 综上所述,Maven 2 是Java开发者的重要工具,它通过标准化项目结构、自动化构建过程和管理依赖,极大地提升了开发效率和项目...

    maven构建web项目

    1. **创建Maven Web项目**:使用Maven的archetype插件可以快速创建一个新的Web项目。例如,可以运行`mvn archetype:generate -DgroupId=...

    SpringBoot项目使用maven配置文件

    SpringBoot项目使用maven配置文件是Java后端开发中的常见实践,它可以帮助开发者高效地管理依赖、构建项目以及执行自动化任务。Maven是Apache软件基金会的一个项目,它提供了一个项目对象模型(Project Object Model...

    使用Vert.x Maven插件快速创建项目的方法

    下面将介绍使用 Vert.x Maven 插件快速创建项目的方法。 使用 Vert.x Maven 插件快速创建项目的方法 ----------------------------- ### 添加 Vert.x Maven 插件 要使用 Vert.x Maven 插件,首先需要在项目的 pom...

    maven项目的创建

    ### Maven项目的创建详解 在软件开发领域,尤其是Java开发中,Maven作为一款自动化构建工具,因其强大的依赖管理和项目...希望本教程能帮助初学者快速入门Maven项目创建的过程,从而更高效地进行Java项目的开发工作。

    Eclipse使用Maven构建web项目视频教程

    本教程聚焦于如何在Eclipse集成开发环境中利用Maven来构建Web项目,旨在帮助初学者快速上手,但不涉及特定的框架如Spring或Struts。 **一、Maven简介** Maven是一款强大的项目管理和综合工具,它简化了构建、依赖...

    使用Eclipse构建Maven项目

    在新建向导中,我们可以选择“Create a simple project”来快速创建一个基本的Maven结构,或者选择“Create a project from archetype”来根据特定的Maven Archetype创建项目。Archetype是预定义的项目模板,包含了...

    Maven2快速入门教程

    通过这个快速入门教程,你应该已经掌握了Maven2的基础知识,包括安装、配置、创建项目、理解和使用命令。要深入了解Maven,你可以继续阅读官方文档,学习更多高级特性,如依赖管理、插件使用、多模块项目构建等,...

    maven项目开发的maven3.3.9使用包

    1. **创建SpringBoot项目**:使用Maven的archetype插件可以快速生成SpringBoot项目的基本结构。 2. **配置SpringBoot依赖**:在POM.xml中添加SpringBoot的起步依赖(starter),如`spring-boot-starter-web`,Maven...

Global site tag (gtag.js) - Google Analytics