【Maven学习笔记系列】一些基础mvn命令输入后到底做了什么?
2018-01-30 21:33
691 查看
PS:目前在实习的过程中,因为正在接触的项目比较大的原因,所以存在一个项目关联别的项目,所以就需要用到maven去打包,给其他项目去调用,老人只告诉我需要输入这么几个命令,所以我就跟着输入了,但是一直以来都不知道它具体是干嘛的,怎么操作的。所以这次就趁这个机会总结总结。
maven是什么呢?那就去百度吧,目前,它给我最大的感觉就是一个很牛逼plus的工具,可以对我们项目里的jar进行管理等等,不需要程序员到处去下载jar包,总之吧,好处大大的。
先放上官方频道的命令介绍:官方频道:Maven Plugins
野路子的命令介绍: Maven常用命令--艺意
一、正题,走进mvn命令
然后我们就得到一个maven的项目啦,我们打开该项目的目录,我们就可以看到几个文件夹和几个文件
首先,.setting目录我们先不管,是一个存放eclipse插件配置信息的地方,src目录我们都知道,是放代码和资源文件的地方,target目录就是放我们编译后产生文件或则包之类的地方。pom.xml就跟不用说了,是maven核心的文件。我们主要看的是.project文件和.classpath文件,它们两个是eclipse项目独有的文件。有它们两个才能说明这个项目是一个eclipse工程而不是一个idea工程。所以自然idea项目也有作用相对于这两个文件的文件。这两个文件和目录具体的作用可以看这里:eclipse配置文件的作用 。
首先我们打开该目录的cmd窗口,输入mvn clean (清理项目编译生成的目录和文件)
build success之后,我们看到目录
target文件不见了,因为执行了mvn clean命令之后,maven就会把项目输出的文件和目录都删除掉。所以一般我们要做一些操作和测试的时候,为了避免其他因素上的干扰,我们都会首先执行mvn clean,清理一下项目生成的文件和目录。
然后我们再输入mvn eclipse:clean (清理eclipse项目的配置文件) 再看看目录结构
.setting目录和.project和.classpath文件被清除了。一旦清除了之后,这个项目就再也不是一个eclipse项目了。在这种情况下,你通过eclipse去import eclipse项目是行不通的。因为它已经不是一个eclipse项目了
你只能通过eclipse去import maven project到导入,只有目录结构中还存在中pom.xml文件,因为这个才是maven的核心
一旦你导入之后,maven就会帮你自动执行mvn eclipse:eclipse 命令,将该项目构建成一个eclipse项目,导入eclipse.
所以你可以看到目录结构又齐全了。.classpath文件,.project文件和.setting目录又生成了。如果你单独执行mvn eclipse:eclipse的话,它的作用就是构建出.project和.classpath文件,让该项目成为一个eclipse项目。所以可以看出eclipse的maven plugh只是用了可视化操作的方式帮我们集成了命令行,让操作变得更加简单方便,减少我们的学习成本。mvn idea:clean 和mvn
idea:idea的命令也是类似的,这里就不多说了
现在我们来说下,编译、打包的命令
输入mvn compile 命令,我们看到目录,就可以在target目录下找到编译后生成class文件了等等啦。
输入mvn package 命令 打包(war/jar)
我们就可以在log记录上和目录上看到生成的war包。如果你要打jar包也是可以的,主要是看pom.xml配置的是war包还是jar包。
最后我们测试一下 mvn install 命令 ,这个命令又是干嘛的呢,这个命令就是在将项目打包成jar包,放到我们电脑本地上的repository,也就是本地的仓库,一般来说都是路径都是c:\users\{你的用户}\.m2\repository。而打的包就放在该repository目录下,具体路径就是项目的包名。一般情况先排除其他干扰因素,我们打包使用mvn clean install
而不是 mvn install。就是在打包之前先清理了项目编译生成的文件,这是有影响的,区别就以后有机会再总结了。
输入mvn clean install 我们可以找到本地的仓库上找到这个包了。作用就是给其他项目引用。
大致总结到这里~~其他的命令呢,大家就可以从我在最上面放的两个链接去看看,官方的解释和野路子一起琢磨,效果更佳~~
maven是什么呢?那就去百度吧,目前,它给我最大的感觉就是一个很牛逼plus的工具,可以对我们项目里的jar进行管理等等,不需要程序员到处去下载jar包,总之吧,好处大大的。
先放上官方频道的命令介绍:官方频道:Maven Plugins
野路子的命令介绍: Maven常用命令--艺意
一、正题,走进mvn命令
1、编译代码 mvn compile 2、运行测试 mvn test 3、打包 mvn package 4、打包到本地仓库(Repository) mvn install 5、清除项目输出的目录和文件 mvn clean 6、生成eclipse项目 mvn eclipse:eclipse 7、清除eclipse项目文件 mvn eclipse:clean 8、生成idea项目 mvn idea:idea 9、清除idea项目文件 mvn idea:clean我这里主要总结几个基础命令,首先为了显示出效果,我们用eclipse先创建一个简单的Maven项目,点击finish
然后我们就得到一个maven的项目啦,我们打开该项目的目录,我们就可以看到几个文件夹和几个文件
首先,.setting目录我们先不管,是一个存放eclipse插件配置信息的地方,src目录我们都知道,是放代码和资源文件的地方,target目录就是放我们编译后产生文件或则包之类的地方。pom.xml就跟不用说了,是maven核心的文件。我们主要看的是.project文件和.classpath文件,它们两个是eclipse项目独有的文件。有它们两个才能说明这个项目是一个eclipse工程而不是一个idea工程。所以自然idea项目也有作用相对于这两个文件的文件。这两个文件和目录具体的作用可以看这里:eclipse配置文件的作用 。
首先我们打开该目录的cmd窗口,输入mvn clean (清理项目编译生成的目录和文件)
build success之后,我们看到目录
target文件不见了,因为执行了mvn clean命令之后,maven就会把项目输出的文件和目录都删除掉。所以一般我们要做一些操作和测试的时候,为了避免其他因素上的干扰,我们都会首先执行mvn clean,清理一下项目生成的文件和目录。
然后我们再输入mvn eclipse:clean (清理eclipse项目的配置文件) 再看看目录结构
.setting目录和.project和.classpath文件被清除了。一旦清除了之后,这个项目就再也不是一个eclipse项目了。在这种情况下,你通过eclipse去import eclipse项目是行不通的。因为它已经不是一个eclipse项目了
你只能通过eclipse去import maven project到导入,只有目录结构中还存在中pom.xml文件,因为这个才是maven的核心
一旦你导入之后,maven就会帮你自动执行mvn eclipse:eclipse 命令,将该项目构建成一个eclipse项目,导入eclipse.
所以你可以看到目录结构又齐全了。.classpath文件,.project文件和.setting目录又生成了。如果你单独执行mvn eclipse:eclipse的话,它的作用就是构建出.project和.classpath文件,让该项目成为一个eclipse项目。所以可以看出eclipse的maven plugh只是用了可视化操作的方式帮我们集成了命令行,让操作变得更加简单方便,减少我们的学习成本。mvn idea:clean 和mvn
idea:idea的命令也是类似的,这里就不多说了
现在我们来说下,编译、打包的命令
输入mvn compile 命令,我们看到目录,就可以在target目录下找到编译后生成class文件了等等啦。
输入mvn package 命令 打包(war/jar)
我们就可以在log记录上和目录上看到生成的war包。如果你要打jar包也是可以的,主要是看pom.xml配置的是war包还是jar包。
最后我们测试一下 mvn install 命令 ,这个命令又是干嘛的呢,这个命令就是在将项目打包成jar包,放到我们电脑本地上的repository,也就是本地的仓库,一般来说都是路径都是c:\users\{你的用户}\.m2\repository。而打的包就放在该repository目录下,具体路径就是项目的包名。一般情况先排除其他干扰因素,我们打包使用mvn clean install
而不是 mvn install。就是在打包之前先清理了项目编译生成的文件,这是有影响的,区别就以后有机会再总结了。
输入mvn clean install 我们可以找到本地的仓库上找到这个包了。作用就是给其他项目引用。
大致总结到这里~~其他的命令呢,大家就可以从我在最上面放的两个链接去看看,官方的解释和野路子一起琢磨,效果更佳~~
相关文章推荐
- Maven学习笔记(二)——Maven目录结构、pom.xml解析&基础命令(一)
- maven 学习笔记(1)——mvn命令
- Maven学习笔记(二)——Maven目录结构、pom.xml解析&基础命令(一)
- 菜鸟学习linux笔记与练习-----第二天。一些基本命令以及初级网络配置
- 菜鸟学习linux笔记与练习-----第一天。一些初级命令以及基本用户管理
- 学习基础到底为的是什么?
- 李浩学习计算机系列笔记——ADO.NET基础入门
- J2SE基础夯实系列之String字符串不可变的理解,不可变类,final关键字到底修饰了什么
- 黑马程序员之C#编程基础学习笔记:提示用户输入年龄,如果大于等于18,则告知用户可以查看,如果小于10岁,则告知不允许查看,如果大于等于10岁,则提示用户是否继续查看(yes,no),如果输入的是ye
- 黑马程序员之C#编程基础学习笔记:让用户输入两个数,打印出两个数的和。
- 黑马程序员之C#编程基础学习笔记:提示用户输入两个整数(假设i1,i2)。如果i1,i2都是正数,则将i2的值递增一个数,然后打印i1+i2的值;如果i1,i2都是负数,则将i1的值递减10个数,然后
- 写得蛮好的linux学习笔记(一些常用的基本命令)
- 黑马程序员之C#编程基础学习笔记:提示用户输入密码,如果密码是“888888”,则提示正确,否则提示错误。
- J2SE基础夯实系列之String字符串不可变的理解,不可变类,final关键字到底修饰了什么
- 菜鸟学习linux笔记与练习-----第一天。一些初级命令以及基本用户管理
- struts2系列学习笔记(12)---------------Struts2在OGNL基础上的增强
- Maven学习笔记(1) 了解什么是Maven
- 菜鸟学习linux笔记与练习-----一些基本命令以及初级网络配置
- 菜鸟学习linux笔记与练习-----第一天。一些初级命令以及基本用户管理
- linux基础命令学习笔记