MAVEN整理(乘国庆还有时间,停下来整理一下)
昨天写下了这篇博客(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整理(乘国庆还有时间,停下来整理一下)的更多相关文章
- PostgreSQL的时间函数使用整理
PG的时间函数使用整理如下 1.获取系统时间函数 select now(); --2012-05-12 18:51:59.562+08 select current_timestamp; --2012 ...
- 自己花了2天时间,重新整理了个全面的vue2的模板
自己花了2天时间,重新整理了个全面的vue2的模板,基本vue中需要的部分都整理封装好了,希望大家喜欢^ ^.欢迎大家star或者fork呀~,https://github.com/qianxiaon ...
- 整理总结 python 中时间日期类数据处理与类型转换(含 pandas)
我自学 python 编程并付诸实战,迄今三个月. pandas可能是我最高频使用的库,基于它的易学.实用,我也非常建议朋友们去尝试它.--尤其当你本身不是程序员,但多少跟表格或数据打点交道时,pan ...
- [转帖]PG的时间函数使用整理如下
PG的时间函数使用整理如下 https://blog.csdn.net/dahuzix/article/details/48576945 1.获取系统时间函数 -- :: -- :: -- :: 2. ...
- datetime中时间的formatter整理
datetime是个很常用的模块,这个连python初学者都应该知道,datetime中有两个函数:strftime和strptime,里面都有个参数format,可以将输出的时间格式化.例如 pri ...
- ffmpeg未整理好,有时间整理下
v 容器(Container) v 容器就是一种文件(封装)格式,比如flv.mkv.ts.mp4.rmvb.avi等.包含下面5种流以及文件头信息. v 流(Stream) v 是一种视频数 ...
- js获得时间new Date()整理
Date对象取得年份有两种方法:getFullYear()和getYear() 经测试var dt = new Date(); //alert(new Date())弹出:Thu Aug 24 201 ...
- 【时间工具】整理下java时间换算专题
首先总结了一下日期转换基础,最常用的两个工具类Date与calender,转换方法如下: package com.zzt.spider; import java.text.SimpleDateForm ...
- Maven基础&&Spring框架阶段常用工具类整理
常用工具类 1.密码加密工具类: package com.itheima.utils; import java.security.MessageDigest; import sun.misc.BASE ...
随机推荐
- 网狐6603手机棋牌游戏源码.rar
网狐6603手机棋牌游戏源码.rar 文件大小: 333 MB 发布一款手机棋牌游戏源码带教程文档! 仅供学习,下载后请务必在24小时内删除! 网狐6603手机棋牌游戏源码 链接:http://p ...
- NetworkComms.Net github下载地址
https://github.com/MarcFletcher/NetworkComms.Net
- MVC应用程序结构与规划
对MVC好长一段时间练习,说句实在的话,还有很多是感到陌生,很多是生疏...... 很多网友也是刚想学习MVC,看到Insus.NET每学习一种方法,一个技巧均写成博文,也很希望能获取到练习的源程序以 ...
- [CLR via C#]14. 字符、字符串和文本处理
一.字符 在.NET Framewole中,字符总是表示成16位Unicode代码值,这简化了国际化应用程序的开发. 每个字符都表示成System.Char结构(一个值类型) 的一个实例.System ...
- Python入门笔记(8):列表
一.序列类型操作符 1.切片[]和[:] 2.成员关系操作符(in ,not in ) 1: s1 = [1,2,3,4,5,6,7] 2: s2 = [2,3,6] 3: s3 = [] 4: fo ...
- MSIL指令集
名称 说明 Add 将两个值相加并将结果推送到计算堆栈上. Add.Ovf 将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上. Add.Ovf.Un 将两个无符号整数值相加,执行溢出检查,并且 ...
- 与众不同 windows phone (40) - 8.0 媒体: 音乐中心的新增功能, 图片中心的新增功能, 后台音乐播放的新增功能
[源码下载] 与众不同 windows phone (40) - 8.0 媒体: 音乐中心的新增功能, 图片中心的新增功能, 后台音乐播放的新增功能 作者:webabcd 介绍与众不同 windows ...
- ActiveReports 报表应用教程 (3)---图表报表
ActiveReports 的图表控件支持绝大多数常用的二维和三维图表类型,包括XY图表和财务图表.通过使用图表控件的定制功能,如修改坐标轴.图注.图例等,用户可以创建任何其所需要的图表效果.用户还可 ...
- mongodb学习1---基本命令
0:基本命令:1,登录mongodb数据库mongo 2,查看数据库,选择数据库show dbs;use table1; 3,查看集合show collections; 4,查看集合所有数据db.集合 ...
- 论元数据和API管理工具
公司里面的很多部门都在广泛的采用元数据管理,也采用了公司内部开发的元数据管理工具,有些部门的实施效果一直非常好,而有些部门的效果则差强人意.这个问题,其实和软件系统开发完成进入维护阶段后成本居高不下的 ...