Maven从零开始_1_Maven概览

来源:互联网 发布:base64 java 保存图片 编辑:程序博客网 时间:2024/06/05 11:51

/*

前言

之前做个项目,用php的cms改的,后来就想,java有没有自己的cms呢?如果看开源的cms代码,会不会进步很多呢?于是抱着这样的心态,在网上找到了一个中国人写的java版本的开源的cms:点击打开链接 ,名字是jpress,架构没有采用传统的spring或者ssh这种,利用的也是中国人编写的一个轻量级的web框架jfinal:点击打开链接 ,于是现在的我想学习下这些只是,对jpress进行快速二次开发,甚至想利用spring或者ssh编写一套cms。

整个项目里,利用的maven进行项目管理,之前也有前辈说让我学习maven,但是到目前为止我也不知道maven到底是干什么的,在网上找了相关视频进行学习,这里留下笔记,可能没有参考价值,只为自己做一个记录。

Maven学习视频地址:点击打开链接

*/

一. Maven 是做什么用的呢?

其实我也不知道,到目前为止只知道是一个apache下的一个项目构建工具,方便java项目的开发,具体什么情况随着学习再进行了解。

二. Maven的安装

1. 去 官网下载maven

2. 解压,出现如下目录

3. 配置环境变量

(a)新建系统变量

bbin目录拷贝到path中

c)运行cmd,查看maven版本,测试是否安装成功

如图安装成功:

三. 用一个手动建立的小例子,最直观的看看maven怎么用

1. 新建一个文件夹maven_2016作为工作区,在里面新建文件夹maven_ch01作为第一个项目存放的文件夹。

2. 新建一个pom.xml,并且编辑他如下:

3. 在 maven_ch01中新建个文件夹“”src“,“src”中新建两个:“main”和“test”。在“main”中新建“java”文件夹,在“java”文件夹中新建代码。

4. 在main中,新建出package路径,并把代码剪切到其中。

5. 使用cmd,切换到maven_ch01目录,使用 mvn compile命令Build项目,此时,会发现maven会从网上自动下载相关依赖,如图:

出现如下图,表示完成:

6. 回过头看maven_ch01目录下

多了一个target文件夹,里面有classes文件夹,里面存放的是我们java文件编译后的class文件,这说明,maven在执行mvn compile命令后,帮我们编译了我们写好的java文件。

7. 我们继续写

我们在test文件夹中新建java文件夹,在其中编写测试类。

8. 在test文件夹下新建后,相应的package路径,并剪切到其中

9. cmd执行 mvn test命令:

并没有下载junit的jar包,因为没有在pom.xml中做配置

10. 在pom.xml中配置 Junit相关,再次运行命令

11. 小结

到了这里,我们有了个小小的认识,maven帮我们自动管理了jar包,试想如果未来公司使用了svn等管理工具,新来的员工,下载好项目,还要自己配置环境,自己配置Tomcat,如果利用maven,可以进行自动化管理、编译、测试、自动发布等等,非常的方便。

12 . 其他命令

(a) clean命令

清除之前生成的结果文件

执行后发现target文件夹就没有了。

(b)package命令

先编译,然后测试,生成target等文件夹和文件,然后生成项目的jar包。

然后新建另一个maven项目maven_ch02,记得拷贝并修改pom文件,试着将ch01应用到第二个项目中

artifactId改成02,增加一个scope标签。

因为我们没有使用ide来做,我们按照第一个项目的顺序新建文件夹,新建一个新的Hello类:

编译一下项目:

报错,找不到HelloMaven类

这个时候我们要把第一个项目引入到第二个中,方法是在pom文件中配置。

这个时候,我们要先在ch01中执行mvn install命令,然后切换到ch02执行mvn compile才可以,否则如果在ch02直接执行compile会报错找不到。

13. 再次小结

(a)我们发现,如果我们,将项目分成一个个模块开发,那么将来开发别的项目,可以直接将现有模块快速导入,这是让我觉得非常牛逼的地方。

(b)五个命令

四. 仓库

我们经过上面的例子,发现jar包不需要引入到工作区,那么下载好的jar包都在哪里呢?

windows默认如图:

五. 自我总结

到这里,算是大概明白了maven的作用和好处,集中管理jar包和各个项目模块,编译、测试、发布等一体完成,爽的一批。

0 0
原创粉丝点击