最近很火热的12306的订票软件go-home,我也下载了一份下来了,使用了一下,也从svn中把代码down下来了,但是在eclipse中竟然出错了,依赖的jar包都没有找到,后来才知道人家是用maven来管理依赖的,所以就去看了下maven,发现还真是很强大很方便的一个工具,特记录一下简单的配置和使用。

首先是下载,给个地址就行了,太多的就不用说了。下载地址:http://maven.apache.org/download.html

接下来就是配置咯,下载下来了总得能运行才行嘛。

maven的运行依赖一下几个环境变量:M2_HOMEM2JAVA_HOME,另外需要在path中保证有M2和%JAVA_HOME%\bin

解压maven到本地后,在环境变量中新建名为M2_HOME,值为本地maven路径的值;增加名为M2,值为%M2_HOME%\bin的环境变量,并将%M2_HOME%\bin加到Path中,最基本的JAVA_HOME需要指定到本地jdk的目录。

以上几个环境变量的设置结束之后,在命令行cmd中输入mvn -version,能正确的出现结果则表示配置完成了。

最后跑一下示例,在命令行中输入:

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
maven此时第一次运行,会自动下载常用的些依赖包和一些其他文件到本地仓库,由于网络原因,可能会需要多次执行该命令才能最终成功。成功后,此时maven已经将我们的项目结构建立起来了,在执行命令行的目录中,已经创建了一个叫my-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目录中存放测试代码。

跟ant脚本类似,ant需要build.xml,而maven需要的是pom.xml。pom.xml中描述了项目中的依赖关系,需要那些jar,配置一下,maven会自动帮你从网上下载所需要的包。pom.xml文件的详细介绍留着下次在说吧。

项目创建出来了之后就该打包编译了,使用mvn package命令即可。build成功之后使用以下命令则可以执行打包好的jar包。

java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App

结果会输出:Hello World!

maven常用的一些其他的命令:

  • validate 验证项目必须信息的完整性
  • test 运行单元测试代码
  • verify 验证包
  • install 安装本地jar包到仓库
  • deploy 部署项目
  • compile 编译项目
  • package 打包项目
  • clean 清除之前的build结果
  • site 生成项目文档
  • integration-test

还有一个很方便的地方,就是可以在一个命令中干多件事情,例如:

mvn clean dependency:copy-dependencies package

上面的命令会先清理项目的输出,然后拷贝依赖,最后打包项目。

了解了maven的基本知识之后,对于svn出来的go-home代码已经有办法处理了。安装maven之后,直接mvn package就ok了,让maven自动去下载所需要的依赖,不成功多试几下将所有的依赖都下载完之后就可以正常编译成功了。对于想改进该软件的同志们,可以修改后发布新版本咯。

Java开发Maven环境配置和介绍的更多相关文章

  1. Selenium2学习-001-Selenium2 WebUI自动化Java开发 Windows 环境配置

    此文主要介绍 Selenium2 WebUI自动化Java开发 Windows 环境配置,供各位亲们参考,若有不足之处,敬请各位大神指正,非常感谢! 所需软件列表如下所示: 所属分类 具体名称 备注 ...

  2. linux下JAVA开发的环境配置

    1.去http: //java.sun.com/j2se/1.4.2/download.html 下载一个Linux Platform的JDK,建议下载RPM自解压格式的(RPM in self-ex ...

  3. Mac 下 java环境 maven环境配置

    java环境配置 下载jdk,按照提示安装 我下的是1.8.0版本,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8- ...

  4. java 环境配置 maven 环境配置

    1.windows 下Java 环境的安装和配置: 下载jdk并安装 配置环境变量: (1) 新建JAVA_HOME环境变量,赋值为JDK的安装目录: (2) 新建CLASSPATH环境变量,赋值为. ...

  5. selenium+java+testNG+maven环境搭建

    一.简单介绍 1.selenium: Selenium是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mozilla Fir ...

  6. Mac IntelliJ IDEA 2017(java开发集成环境)附注册码和破解教程 v2017.3.5破解版

    原文:http://www.orsoon.com/Mac/155938.html 原文中含有软件下载地址 软件介绍 IntelliJ IDEA 2017 Mac激活版是Mac平台上的一款java开发集 ...

  7. Java-Maven-Runoob:Maven环境配置

    ylbtech-Java-Maven-Runoob:Maven环境配置 1.返回顶部 1. Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果 ...

  8. 【第二篇】- Maven 环境配置之Spring Cloud直播商城 b2b2c电子商务技术总结

    Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果你还未安装 JDK,可以参考我们的 Java 开发环境配置. 系统要求 项目 要求 JDK ...

  9. Java-Maven(四):Eclipse集成Maven环境配置

    一般maven都需要集成到IDE上使用的,而不是单独的使用,常见的maven可集成IDE:eclipse.IntelliJ IDEA.但这里就只学习eclipse集成maven的基础上,进行maven ...

随机推荐

  1. itoa

    功能:把int转为字符数组 eg: int a=100: char ch[3]; itoa(a,ch,10)://十进制 ---->ch[0]==1;...

  2. SqlSever基础 print 在消息中输出hello world

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  3. 主框架搭建demo

    - (void)viewDidLoad {     [super viewDidLoad];        [self setUpAllChildViewController]; }    /**   ...

  4. 一个js搜索功能的实现

    这次的重点就在于一个兼容性的问题.就是innerText(微软ie)和textContent(火狐)的知识点,兼容性永远都是伤啊 <!DOCTYPE html PUBLIC "-//W ...

  5. [转]Unity3D:Gizmos画圆(原创)

    using UnityEngine; using System; public class HeGizmosCircle : MonoBehaviour { public Transform m_Tr ...

  6. Cheatsheet: 2014 07.01 ~ 07.31

    Web Maximize Compression with Zopfli Browser Detection with JavaScript Simple MySQL Master HA with m ...

  7. C#在泛型类中,通过表达式树构造lambda表达式

    场景 最近对爬虫的数据库架构做调整,需要将数据迁移到MongoDB上去,需要重新实现一个针对MongoDB的Dao泛型类,好吧,动手开工,当实现删除操作的时候问题来了. 我们的删除操作定义如下:voi ...

  8. Android Studio中有用的快捷键栏

    Android Studio中有用的快捷键栏#1 Ahraewi线移动 Alt + Shift +向上/向下❖Alt + Shift +向上/向下 或上下移动在所选位置的行. 删除行 CMD + B ...

  9. [SAP ABAP开发技术总结]BAPI调用

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  10. OnClientClick和OnClick同时使用!

    摘自:http://www.cnblogs.com/zhuiyi/archive/2011/07/04/2097804.html 其实有的时候需要客户端和服务端双重校验,为什么这么说呢? 比果说,一个 ...