昨天写下了这篇博客(http://www.cnblogs.com/hzmark/p/131003Release.html),今天有时间,就这里一下第一篇内容。

换工作公司开发平台:

WINDOWS+Velocity+JAVA+Spring+Ibatis+Oracle

还有就是基于架构师的那套框架,打包发布用的ANT。

我们开发都在这些基础之上(基础架构已经搭好,打包发布脚本都很完善,自己只需做好自己模块的业务编码),遵循一套规范,开发起来比较方便快速。

曾经想自己把公司这套东西都搞明白了,所以学过ANT,读过公司那套标准且复杂的发布脚本。

换了工作后公司没有使用ANT了,项目统一使用MAVEN管理,所以就接触到了MAVEN并且之后的项目都是用MAVEN。

用了一段时间了,就按照常用的一些功能在使用,所以想整理一下。

MAVEN主页:http://maven.apache.org/index.html(个人习惯,学什么都习惯到官方主页去读读看)

MAVEN是一个软件项目管理工具。

安装:

下载安装包,如apache-maven-3.1.0-bin.tar.gz(因为是MAC系统),解压到希望安装的目录,如/usr/local/apache-maven

添加环境变量

M2_HOME=/usr/local/apache-maven/apache-maven-3.1.0

export M2=$M2_HOME/bin

使用mvn -version查看安装是否成功

其他系统的安装官网也有说明:http://maven.apache.org/download.cgi

5分钟学会使用MAVEN:

创建一个maven项目:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

这个命令将在当前目录创建一个maven项目,项目名就是my-app,com.mycompany.app是报名。

项目结构如下:

my-app
|-- pom.xml
`-- src
       |-- main
       |   `-- java
       |        `-- com
       |             `-- mycompany
       |                  `-- app
       |                       `-- App.java
       `-- test
           `-- java
                `-- com
                     `-- mycompany
                          `-- app
                               `-- AppTest.java
src/main/java里面是源码,src/test/java里面是测试代码。pom.xml是maven和核心文件。

下面是pom.xml文件的内容:

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-app</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

里面包含了打包一个项目所需的所有信息。从上面可以看出依赖的包,打包的方式,项目名等等。上面的这个项目名称是my-app,groupId是com.mycompany.app,打包方式是jar。

下面打包这个项目。

打包一个maven项目非常的简单,只需要在项目的目录下执行mvn package命令。

打包完成的信息

打包后会在项目目录下生成target目录,结构如下

执行打包成的jar的结果

Java开发离不开eclipse,如何将一个项目作为eclipse项目导入呢?

只需要在项目目录下执行mvn eclipse:eclipse,之后就可以将项目导入到eclipse中了。

已经可以使用maven建立项目,并可以导入到eclipse了,但是每次建项目这样搞也觉着麻烦,这时我们就需要插件了(Eclipse插件是如此的好用)。

官网对于Eclipse插件的介绍:http://maven.apache.org/eclipse-plugin.html http://eclipse.org/m2e/

安装方法就不讲了,给个在线安装的地址:http://m2eclipse.sonatype.org/sites/m2e

安装完成后就可以直接在eclipse中进行maven相关的操作了,非常的方便。

eclipse中使用maven建立web项目可以参考http://www.blogjava.net/kevonz/archive/2012/07/08/382542.html

暂时就这么多,先这样。

(其实很多东西都可以在官网上找到,只是需要读英文而已)

MAVEN整理(乘国庆还有时间,停下来整理一下)的更多相关文章

  1. PostgreSQL的时间函数使用整理

    PG的时间函数使用整理如下 1.获取系统时间函数 select now(); --2012-05-12 18:51:59.562+08 select current_timestamp; --2012 ...

  2. 自己花了2天时间,重新整理了个全面的vue2的模板

    自己花了2天时间,重新整理了个全面的vue2的模板,基本vue中需要的部分都整理封装好了,希望大家喜欢^ ^.欢迎大家star或者fork呀~,https://github.com/qianxiaon ...

  3. 整理总结 python 中时间日期类数据处理与类型转换(含 pandas)

    我自学 python 编程并付诸实战,迄今三个月. pandas可能是我最高频使用的库,基于它的易学.实用,我也非常建议朋友们去尝试它.--尤其当你本身不是程序员,但多少跟表格或数据打点交道时,pan ...

  4. [转帖]PG的时间函数使用整理如下

    PG的时间函数使用整理如下 https://blog.csdn.net/dahuzix/article/details/48576945 1.获取系统时间函数 -- :: -- :: -- :: 2. ...

  5. datetime中时间的formatter整理

    datetime是个很常用的模块,这个连python初学者都应该知道,datetime中有两个函数:strftime和strptime,里面都有个参数format,可以将输出的时间格式化.例如 pri ...

  6. ffmpeg未整理好,有时间整理下

    v  容器(Container) v  容器就是一种文件(封装)格式,比如flv.mkv.ts.mp4.rmvb.avi等.包含下面5种流以及文件头信息. v  流(Stream) v  是一种视频数 ...

  7. js获得时间new Date()整理

    Date对象取得年份有两种方法:getFullYear()和getYear() 经测试var dt = new Date(); //alert(new Date())弹出:Thu Aug 24 201 ...

  8. 【时间工具】整理下java时间换算专题

    首先总结了一下日期转换基础,最常用的两个工具类Date与calender,转换方法如下: package com.zzt.spider; import java.text.SimpleDateForm ...

  9. Maven基础&&Spring框架阶段常用工具类整理

    常用工具类 1.密码加密工具类: package com.itheima.utils; import java.security.MessageDigest; import sun.misc.BASE ...

随机推荐

  1. 脊柱外科病人资料管理系统的界面设计分析(2)--JOA评分记录的实现

    在上篇随笔<脊柱外科病人资料管理系统的界面设计分析>中介绍了一些常用的界面设计方面的内容,本篇继续上一篇,介绍脊柱外科病人管理系统的JOA评分记录模块的界面设计以及实现方面的内容. JOA ...

  2. 实例对比剖析c#引用参数的用法

    c#引用参数传递的深入剖析值类型的变量存储数据,而引用类型的变量存储对实际数据的引用.(这一点很重要,明白了之后就能区分开值类型和引用类型的差别) 在参数传递时,值类型是以值的形式传递的(传递的是值, ...

  3. python代码风格-PEP8

    转载自http://www.douban.com/note/134971609/ Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下 ...

  4. Linux基础学习系列(一)

    Linux是一种类似于UNIX的操作系统,由Linus Torvalds于1991年在minix操作系统的基础创建.Linux凭借其优良特性已经成为目前发展潜力最大的操作系统. Linux的版本有内核 ...

  5. 第二章--Win32程序运行原理 (部分概念及代码讲解)

    学习<Windows程序设计>记录 概念贴士: 1. 每个进程都有赋予它自己的私有地址空间.当进程内的线程运行时,该线程仅仅能够访问属于它的进程的内存,而属于其他进程的内存被屏蔽了起来,不 ...

  6. Linux下建立Nexus私服

    Linux下建立Nexus私服 要安装3个东西,然后配置私服: 1.JDK 2.Maven 3.Nexus 然后配置 1.JDK的安装 下载JDK安装包,格式为RPM格式,安装即可 安装程序 #rpm ...

  7. Jsoup实现java模拟登陆

    Jsoup实现java模拟登陆 2013-10-29 14:52:05|  分类: web开发|举报|字号 订阅     下载LOFTER我的照片书  |     1:如何获取cookies. 1.1 ...

  8. Ansible用于网络设备管理 part 0 安装和登录网络设备

    真实在是累了,但是又怕第二天早上又忘掉,在这先大概写写. 安装: http://www.tecmint.com/install-and-configure-ansible-automation-too ...

  9. EntityFramework5学习

    在开发面向数据的软件时我们常常为了解决业务问题实体.关系和逻辑构建模型而费尽心机,ORM的产生为我们提供了一种优雅的解决方案.ADO.NET Entity Framework是.NET开发中一种由AD ...

  10. 参加:白帽子活动-赠三星(SAMSUNG) PRO....

    参加:白帽子活动-—赠三星(SAMSUNG) PRO.... Everybody~小i在这里提前祝大家国庆假期愉快,咱们期待已久的国庆活动终于开始拉,下面进入正题,恩,很正的题! 活动地址:http: ...