Java开发Maven环境配置和介绍
最近很火热的12306的订票软件go-home,我也下载了一份下来了,使用了一下,也从svn中把代码down下来了,但是在eclipse中竟然出错了,依赖的jar包都没有找到,后来才知道人家是用maven来管理依赖的,所以就去看了下maven,发现还真是很强大很方便的一个工具,特记录一下简单的配置和使用。
首先是下载,给个地址就行了,太多的就不用说了。下载地址:http://maven.apache.org/download.html
接下来就是配置咯,下载下来了总得能运行才行嘛。
maven的运行依赖一下几个环境变量:M2_HOME、M2和JAVA_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=falsemaven此时第一次运行,会自动下载常用的些依赖包和一些其他文件到本地仓库,由于网络原因,可能会需要多次执行该命令才能最终成功。成功后,此时maven已经将我们的项目结构建立起来了,在执行命令行的目录中,已经创建了一个叫my-app的目录了,项目的目录结构如下:my-app
|-- pom.xml
`-- src
|-- main
| `-- java
| `-- com
| `-- mycompany
| `-- app
| `-- App.java
`-- test
`-- java
`-- com
`-- mycompany
`-- app
`-- AppTest.javasrc/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环境配置和介绍的更多相关文章
- Selenium2学习-001-Selenium2 WebUI自动化Java开发 Windows 环境配置
此文主要介绍 Selenium2 WebUI自动化Java开发 Windows 环境配置,供各位亲们参考,若有不足之处,敬请各位大神指正,非常感谢! 所需软件列表如下所示: 所属分类 具体名称 备注 ...
- linux下JAVA开发的环境配置
1.去http: //java.sun.com/j2se/1.4.2/download.html 下载一个Linux Platform的JDK,建议下载RPM自解压格式的(RPM in self-ex ...
- Mac 下 java环境 maven环境配置
java环境配置 下载jdk,按照提示安装 我下的是1.8.0版本,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8- ...
- java 环境配置 maven 环境配置
1.windows 下Java 环境的安装和配置: 下载jdk并安装 配置环境变量: (1) 新建JAVA_HOME环境变量,赋值为JDK的安装目录: (2) 新建CLASSPATH环境变量,赋值为. ...
- selenium+java+testNG+maven环境搭建
一.简单介绍 1.selenium: Selenium是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mozilla Fir ...
- Mac IntelliJ IDEA 2017(java开发集成环境)附注册码和破解教程 v2017.3.5破解版
原文:http://www.orsoon.com/Mac/155938.html 原文中含有软件下载地址 软件介绍 IntelliJ IDEA 2017 Mac激活版是Mac平台上的一款java开发集 ...
- Java-Maven-Runoob:Maven环境配置
ylbtech-Java-Maven-Runoob:Maven环境配置 1.返回顶部 1. Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果 ...
- 【第二篇】- Maven 环境配置之Spring Cloud直播商城 b2b2c电子商务技术总结
Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果你还未安装 JDK,可以参考我们的 Java 开发环境配置. 系统要求 项目 要求 JDK ...
- Java-Maven(四):Eclipse集成Maven环境配置
一般maven都需要集成到IDE上使用的,而不是单独的使用,常见的maven可集成IDE:eclipse.IntelliJ IDEA.但这里就只学习eclipse集成maven的基础上,进行maven ...
随机推荐
- 怎样为DataTable设置主键及找行数据
只要是数据集中都应该存在主键,以确定数据集中唯一的值.那么,我们要如何为DataTable设置主键及利用主键在DataTable索引值呢? 步骤/方法 为DataTable设置主键 DataT ...
- SqlSever基础 一个条件group by 一列有两个内容,分组并查看每个内容有多少行,并用as起名
镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...
- .Net操作.exe文件
Process proc = new Process(); proc.StartInfo.FileName = @"D:\Program Files\Foxmail\Foxmail.exe& ...
- Python字符串、元组、列表、字典互相转换的方法
直接上代码!!! 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 ...
- 问题处理:找不到Pch预编译文件?
提醒:Xcode6之后就不再自动创建Pch预编译文件 在Xcode6之前,创建一个新工程xcode会在Supporting files文件夹下面自动创建一个“工程名-Prefix.pch”文件,也是一 ...
- 【转】移动端input输入placeholder垂直不居中
在移动端编写input输入框时候,为了输入文字与输入框垂直居中,一般情况下,会将input的line-height的高度等于height.但在移动端输入的时候会发现,虽然输入内容确实是垂直居中了,但是 ...
- BeanUtils框架的简单运用
Sun公司的内省API过于繁琐,所以Apache组织结合很多实际开发中的应用场景开发了一套简单.易用的API操作Bean的属性——BeanUtils Beanutils工具包的常用类: •BeanUt ...
- MSDN资料
http://www.microsoft.com/china/msdn/events/webcasts/shared/webcast/Series.aspx http://www.microsoft. ...
- HLS播放权限测试记录
阿里云: http://live.mudu.tv/watch/11y1at.m3u8 斗鱼加密: http://hls3a.douyucdn.cn/live/485503r63zGiPn4D_550/ ...
- ssis freach loop container 传入变量给 某些数据源的时候。
ssis freach loop container 传入变量给 某些数据源的时候. 应该选择loop container ,设置delayvalidateion为true. 这样数据源控件就不会报e ...