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 ...
随机推荐
- 脊柱外科病人资料管理系统的界面设计分析(2)--JOA评分记录的实现
在上篇随笔<脊柱外科病人资料管理系统的界面设计分析>中介绍了一些常用的界面设计方面的内容,本篇继续上一篇,介绍脊柱外科病人管理系统的JOA评分记录模块的界面设计以及实现方面的内容. JOA ...
- 实例对比剖析c#引用参数的用法
c#引用参数传递的深入剖析值类型的变量存储数据,而引用类型的变量存储对实际数据的引用.(这一点很重要,明白了之后就能区分开值类型和引用类型的差别) 在参数传递时,值类型是以值的形式传递的(传递的是值, ...
- python代码风格-PEP8
转载自http://www.douban.com/note/134971609/ Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下 ...
- Linux基础学习系列(一)
Linux是一种类似于UNIX的操作系统,由Linus Torvalds于1991年在minix操作系统的基础创建.Linux凭借其优良特性已经成为目前发展潜力最大的操作系统. Linux的版本有内核 ...
- 第二章--Win32程序运行原理 (部分概念及代码讲解)
学习<Windows程序设计>记录 概念贴士: 1. 每个进程都有赋予它自己的私有地址空间.当进程内的线程运行时,该线程仅仅能够访问属于它的进程的内存,而属于其他进程的内存被屏蔽了起来,不 ...
- Linux下建立Nexus私服
Linux下建立Nexus私服 要安装3个东西,然后配置私服: 1.JDK 2.Maven 3.Nexus 然后配置 1.JDK的安装 下载JDK安装包,格式为RPM格式,安装即可 安装程序 #rpm ...
- Jsoup实现java模拟登陆
Jsoup实现java模拟登陆 2013-10-29 14:52:05| 分类: web开发|举报|字号 订阅 下载LOFTER我的照片书 | 1:如何获取cookies. 1.1 ...
- Ansible用于网络设备管理 part 0 安装和登录网络设备
真实在是累了,但是又怕第二天早上又忘掉,在这先大概写写. 安装: http://www.tecmint.com/install-and-configure-ansible-automation-too ...
- EntityFramework5学习
在开发面向数据的软件时我们常常为了解决业务问题实体.关系和逻辑构建模型而费尽心机,ORM的产生为我们提供了一种优雅的解决方案.ADO.NET Entity Framework是.NET开发中一种由AD ...
- 参加:白帽子活动-赠三星(SAMSUNG) PRO....
参加:白帽子活动-—赠三星(SAMSUNG) PRO.... Everybody~小i在这里提前祝大家国庆假期愉快,咱们期待已久的国庆活动终于开始拉,下面进入正题,恩,很正的题! 活动地址:http: ...