做java开发,几乎离不开maven。因为 java的最大优势就是开源生态。网上有数不尽的开源项目,都是已做好的轮子,虽然,我们为了学习或优化而研究各种框架和语言机制, 但大部分情况下都不需要重复发明轮子。maven就是最常用的管理jar库的工具。
百度百科上对maven的介绍:Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。
maven可以用来组织项目,主要通过项目对象模型,即pom.xml文件。主要包括项目的属性,依赖jar包和maven插件。一个项目一个pom.xml文件,导入项目时可以选择通过maven导入,自动生成项目文件。对于多模块组成的项目,先建立一个project,然后在此project下建立module,可以称为子项目。通过在parent project的pom.xml中管理所有依赖项目版本,并在module中引用(即不带版本号),可以确保整个项目中各模块依赖的jar包的版本一致性,并且方便了版本管理。
常用maven命令如下:
- mvn archetype:generate 创建Maven项目
- mvn clean 清除项目目录中的生成结果
- mvn package 根据项目生成的jar
- mvn clean package -Dmaven.test.skip=true:清除以前的包后重新打包,跳过测试类
- mvn test-compile 编译测试源代码
- mvn test 运行应用程序中的单元测试
- mvn compile 编译源代码
- mvn install 在本地Repository中安装jar。把maven库服务器中中没有第三方jar包安装到到本地Repository中的命令:mvn install:install-file -DgroupId=org.csource -DartifactId=fastdfs-client-java -Dversion=${version} -Dpackaging=jar -Dfile=fastdfs-client-java-${version}.jar
- mvn deploy 发布项目