2. 创建一个简单的Maven项目

创建项目

  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


    内容如下:

     1 package org.sonatype.mavenbook.ch03;
     2
     3 /**
     4  * Hello world!
     5  *
     6  */
     7 public class App
     8 {
     9     public static void main( String[] args )
    10     {
    11         System.out.println( "Hello World!" );
    12     }
    13 }

    App.java

     1 package org.sonatype.mavenbook.ch03;
     2
     3 import junit.framework.Test;
     4 import junit.framework.TestCase;
     5 import junit.framework.TestSuite;
     6
     7 /**
     8  * Unit test for simple App.
     9  */
    10 public class AppTest
    11     extends TestCase
    12 {
    13     /**
    14      * Create the test case
    15      *
    16      * @param testName name of the test case
    17      */
    18     public AppTest( String testName )
    19     {
    20         super( testName );
    21     }
    22
    23     /**
    24      * @return the suite of tests being tested
    25      */
    26     public static Test suite()
    27     {
    28         return new TestSuite( AppTest.class );
    29     }
    30
    31     /**
    32      * Rigourous Test :-)
    33      */
    34     public void testApp()
    35     {
    36         assertTrue( true );
    37     }
    38 }

    AppTest.java

     1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     2   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     3   <modelVersion>4.0.0</modelVersion>
     4
     5   <groupId>org.sonatype.mavenbook.ch03</groupId>
     6   <artifactId>simple</artifactId>
     7   <version>1.0-SNAPSHOT</version>
     8   <packaging>jar</packaging>
     9
    10   <name>simple</name>
    11   <url>http://maven.apache.org</url>
    12
    13   <properties>
    14     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    15   </properties>
    16
    17   <dependencies>
    18     <dependency>
    19       <groupId>junit</groupId>
    20       <artifactId>junit</artifactId>
    21       <version>3.8.1</version>
    22       <scope>test</scope>
    23     </dependency>
    24   </dependencies>
    25 </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级别的快速入门就到这里了,下一篇开始一些概念学习。

题外话

  今天还有两个事情需要记录一下:1. 是偶然看到了同事搭建的Sonatype Nexus环境,这个和Maven相关,计划在后面学习;2. 是看了博客达人juvenshun的一些资料,《Maven 权威指南》中文版,就是他翻译的,和别人相比我还是太弱了,需要继续努力!

  1. juvenshun的博客(已退出,改在个人网站发博)
  2. juvenshun的个人网站
  3. juvenshun的简介
  4. 领英网站(全球最大的职业社交网站)
时间: 2024-11-29 10:00:27

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

Maven和Eclipse:m2eclipse -- 创建一个简单的Maven项目

陈科肇-欢迎转载,转载请注明出来,谢谢! ================== 在Maven中,我们使用archetype来创建项目.而在Ecelipse中,我们通过新建项目向导来创建项目.Eeclipse中的新建项目向导为我们提供了大量的创建项目的模板.m2eclipse为这个向导添加了如下的功能: 1.从SCM仓库签出一个Maven项目 2.使用Maven archetype(Maven 原型,即模板)创建一个Maven项目 3.创建一个Maven POM文件 4.实操-例子 =======

使用eclipse创建一个简单的maven项目

1.点击maven project,勾选create a sipmle project(结构相对完整),点击下一步创建完成以后 2.点击项目右键如图就会补全web.xml的信息,或者你可以自己手动创建也可以. 3.在pom.xml文件中添加编译环境,右键项目点击maven-->update project,就可以看到jdk的编译版本变成了1.7的版本了 4.添加项目依赖,例如创建servlet的依赖,servlert-api.jar,如图添加依赖,或者点击pom.xml的底部栏,右键maven-

创建一个简单的Maven工程

Maven的工程结构如下图所示: 大致来看,Maven的工程结构如下: 接下来,我用idea演示创建一个Maven工程. 配置pom.xml文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins

maven权威指南学习笔记(三)&mdash;&mdash;一个简单的maven项目

目标: 对构建生命周期 (build  lifecycle),Maven仓库 (repositories),依赖管理 (dependency management)和项目对象模型 (Project Object Model)有一个基本的理解 目前不准备深入学习maven故此使用工具ideaj 来帮助学习, 用idea创建一个默认的maven工程,结构如下: 相关命令: 打包:mvn package 编译:mvn compile 编译测试程序:mvn test-compile 清空:mvn cle

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

Eclipse neon 汉化版 ; 1;右击新建 -->  选择 动态Web项目 2:  填写 项目名 项目位置 ; 选择 Dynamic web module version 和 tomcat version ; 点击完成 即可创建 项目; 2.1:项目名称; 2.2:项目位置; 2.3: Dynamic Web Module Version  和 Tomacat  Version  之间有版本上的匹配关系: 匹配关系如下图 3: 创建成功后的项目结构: 4: 在创建好项目结构之后 先查看一

使用Intellij IDEA搭建一个简单的Maven项目

IntelliJ IDEA是Java最优秀的开发工具,它功能全面,提示比较智能,开发界面炫酷,新技术支持的比较迅速. 我使用了Eclipse快10年了,IntelliJ IDEA这么好用必须要试一试. 下面使用IntelliJ IDEA来快速搭建一个Maven项目: 1. 第一步我们打开编辑器,来 Create New Project 一个项目 2. 红色框框是几个比较重要的地方,按照我选择的方式进行操作即可点击"Next" 3. 填写组名和项目名 4. 点击下一步,进入如下界面 5.

构建一个简单的Maven项目

这里用Maven Archetype插件从空白开始创建简单的项目. 熟悉Maven 项目和Maven的核心概念. 关键词:构建生命周期(build lifecycle), Maven仓库(repositories), 依赖管理(dependency management), 项目对象模型(project object model)

如何让一个简单的maven项目支持one-jar 做成一个jar fatjar

<?xml version="1.0" encoding="UTF-8"?> <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 htt

JavaEE完全实战详解笔记--在Eclipse中创建一个简单的web项目

下面演示了Eclipse开发JavaEE的通用步骤--配置一个简单的web应用,不同版本的Eclipse可能略有不同,但是基本不会有太大出入. 这里就以"eclipse-jee-luna-SR2-win32"+"apache-tomcat-8.0.21-windows-x86"版本为例,(截止2015年5月份的最新版): (详细过程看图) 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.