☞ 创建项目

  1. 选定一个目录,如E:\workspace\maven,新建的项目将放在这个目录。
  2. 运行CMD,切换到该目录。
  3. 执行mvn archetype:generate
    直到输出"Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 634:"会暂停,直接回车,继续。
    直到输出"Choose org.apache.maven.archetypes:maven-archetype-quickstart version: ... Choose a number: 6:"会暂停,直接回车,继续。
    直到输出"Define value for property 'groupId': :",输入项目的groupId,例如org.sonatype.mavenbook.ch03,回车继续。
    直到输出"Define value for property 'artifactId': :",输入项目的artifactId,例如simple,回车继续。
    直到输出"Define value for property 'version':  1.0-SNAPSHOT: :",输入版本号(默认为1.0-SNAPSHOT),回车继续。
    直到输出"Define value for property 'package':  org.sonatype.mavenbook.ch03: :",输入package(默认为org.sonatype.mavenbook.ch03),回车继续。
    确认输入的参数,没有问题输入Y,回车继续;如果需要修改,输入N回车修改。
    结束。
  4. 查看生成的内容

    |- simple
         |- src
         |    |- main
         |    |    |- java
         |    |         |- org.sonatype.mavenbook.ch03.App.java
         |    |- test
         |        |- java
         |            |- org.sonatype.mavenbook.ch03.AppTest.java
         |- pom.xml

    内容如下:

     package org.sonatype.mavenbook.ch03;
    
     /**
    * Hello world!
    *
    */
    public class App
    {
    public static void main( String[] args )
    {
    System.out.println( "Hello World!" );
    }
    }

    App.java

     package org.sonatype.mavenbook.ch03;
    
     import junit.framework.Test;
    import junit.framework.TestCase;
    import junit.framework.TestSuite; /**
    * Unit test for simple App.
    */
    public class AppTest
    extends TestCase
    {
    /**
    * Create the test case
    *
    * @param testName name of the test case
    */
    public AppTest( String testName )
    {
    super( testName );
    } /**
    * @return the suite of tests being tested
    */
    public static Test suite()
    {
    return new TestSuite( AppTest.class );
    } /**
    * Rigourous Test :-)
    */
    public void testApp()
    {
    assertTrue( true );
    }
    }

    AppTest.java

     <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion> <groupId>org.sonatype.mavenbook.ch03</groupId>
    <artifactId>simple</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging> <name>simple</name>
    <url>http://maven.apache.org</url> <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties> <dependencies>
    <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
    </dependency>
    </dependencies>
    </project>

    pom.xml

☞ 安装项目

  1. 切换到simple目录,当前目录下有pom.xml文件。
  2. 执行mvn install
    我在这一步的时候,因为使用的mirror缺少surefire-junit3而中断,后来换了mirror(http://repo1.maven.org/maven2/)才得以继续

执行安装命令之后,simple目录下,发现多了一个target目录:


|- target
     |- classes
     |    |- org.sonatype.mavenbook.ch03.App.class
     |- test-classes
     |    |- org.sonatype.mavenbook.ch03.AppTest.class
     |- simple-1.0-SNAPSHOT.jar
     |- maven-archiver
     |- maven-status
     |- surefire-reports


其实,我们这个项目已经经历过了编译、测试、打包和安装。可以在.m2/repository/org/sonatype/mavenbook/ch03/simple看到安装的内容:


|- simple
     |- 1.0-SNAPSHOT
     |     |- simple-1.0-SNAPSHOT.jar
     |     |- simple-1.0-SNAPSHOT.pom
     |     |- _remote.repositories
     |     |- maven-metadata-local.xml
     |- maven-metadata-local.xml


☞ 运行项目

在simple目录下执行 java -cp target/simple-1.0-SNAPSHOT.jar org.sonatype.mavenbook.ch03.App :

  Hello Word级别的快速入门就到这里了,下一篇开始一些概念学习。

2. 创建一个简单的Maven项目的更多相关文章

  1. 用Eclipse 创建一个 简单的 Maven JavaWeb 项目

    使用Maven 创建一个简单的 javaWeb 项目: 本篇属于 创建 JavaWeb 项目的第三篇: 建议阅读本篇之前 阅读 用 Eclipse 创建一个简单的web项目  ;本篇是这这篇文章的基础 ...

  2. maven权威指南学习笔记(三)——一个简单的maven项目

    目标: 对构建生命周期 (build  lifecycle),Maven仓库 (repositories),依赖管理 (dependency management)和项目对象模型 (Project O ...

  3. 创建一个简单的maven的web程序

    最近学习Hadoop,发现学习要想用hadoop作为后台运行web程序,必须应用maven,所以学习了今天学习了一下maven,然后搭建了一个简单的web程序 首先我使用的是eclipse中自带的ma ...

  4. 用 Eclipse 创建一个简单的web项目

    Eclipse neon 汉化版 ; 1;右击新建 -->  选择 动态Web项目 2:  填写 项目名 项目位置 ; 选择 Dynamic web module version 和 tomca ...

  5. maven(二):创建一个可用的maven项目,完整过程

    环境:eclipse4.5 (内置maven插件) 创建maven项目 文件菜单--新建--其他-- maven project 下一步 选择web 结构 group id:  指项目在maven本地 ...

  6. 创建一个简单的Django项目

    1.首先,启动pycharm,点击File->New Project,如下图所示. 2.在New Project对话框中,选择Django,在Location中设置项目路径以及项目名称,在App ...

  7. maven创建一个简单的web项目

    1.确认maven插件和配置在eclipse中已经完成 如果没完成,可参考这篇博客:http://www.cnblogs.com/mmzs/p/8191979.html 2.在eclipse中用mav ...

  8. 构建一个简单的Maven项目

    这里用Maven Archetype插件从空白开始创建简单的项目. 熟悉Maven 项目和Maven的核心概念. 关键词:构建生命周期(build lifecycle), Maven仓库(reposi ...

  9. 创建一个简单的Maven工程

    Maven的工程结构如下图所示: 大致来看,Maven的工程结构如下: 在创建maven工程时,可以通过骨架创建,也可以不通过骨架创建. 我们先用idea通过骨架创建一个Maven工程. 配置pom. ...

随机推荐

  1. [Luogu 2221] HAOI2012 高速公路

    [Luogu 2221] HAOI2012 高速公路 比较容易看出的线段树题目. 由于等概率,期望便转化为 子集元素和/子集个数. 每一段l..r中,子集元素和为: \(\sum w_{i}(i-l+ ...

  2. linux内存相关好文(转)

    话说团队的兄弟有一天问我,为啥咱唯一的一个服务器,内存都用完了,我还想在上面测性能呢.我一听,第一反应:不可能!我说你胡扯呢吧,咱那可是16G的一个物理机,上面就跑了git服务器,怎么可能把内存吃完了 ...

  3. Android蓝牙通信总结

    这篇文章要达到的目标: 1.介绍在Android系统上实现蓝牙通信的过程中涉及到的概念. 2.在android系统上实现蓝牙通信的步骤. 3.在代码实现上的考虑. 4.例子代码实现(手持设备和蓝牙串口 ...

  4. 51nod 1106 质数检测——Mr判素数

    质数检测一般都是根号n的写法 当然Mr判素数的方法可以实现log的复杂度2333 Mr判素数的话 我们根据费马小定理只要P是素数 那么另一个素数x 满足 x^P-1≡1(mod P) 同时 x^2%P ...

  5. shell 文件内容替换 sed用法

    sed 's/要被替换的字符串/新的字符串/g' sed 's/test/mytest/g' example-----在整行范围内把test替换为mytest. 如果没有g标记,则只有每行第一个匹配的 ...

  6. Part2-HttpClient官方教程-Chapter6-HTTP缓存(HTTP Caching)

    原文链接 6.1. 一般概念 HttpClient Cache提供了一个与HTTP / 1.1兼容的缓存层与HttpClient(浏览器缓存的Java等价物.)一起使用.该实现遵循责任链设计模式,其中 ...

  7. C++之复制控制

    只有单个形参,而且该形参是对本类类型对象的引用(常用const修饰),这样的构造函数叫做复制构造函数(有时也称为拷贝构造函数),例如: class Person{ public: Person();/ ...

  8. barrier 和 preempt_disable() 学习【转】

    #define preempt_disable() \ do{ \ inc_preempt_count(); \ barrier();    \ }while(0) 一.这个barrier 在干什么. ...

  9. Socket与URL通信比较

    转至链接:http://blog.csdn.net/qq_15848173/article/details/46328399 利用URL通信和Socket进行通信有很多相似之处.他们都是利用建立连接. ...

  10. C# 网络编程小计 20150202

    在学习网络Socket编程之前必须得学会多线程编程,这个是经常会用的到 可参考:http://www.cnblogs.com/GIS_zhou/articles/1839248.html System ...