Java后端

服务端基础-Maven

2016-11-23  本文已影响75人  纸简书生

前段时间给公司说了自己想倒腾下服务端技术,上个版本简单些了三个接口。这个版本没想到幸福来得这么快,直接叫我上手服务端开发。现在有点后悔了,😭😭。当初不装逼就不用这样又做服务端又做客户端的了。

今天对Maven做个简单总结

Maven?

Maven官网

Ant官网

要弄懂一样东西是做什么用的,做直接的方式就是看官方介绍(Google,Baidu):

官方介绍:

类比于iOS中,就对应到我们常用的Cocoapods用得最多的就是包的依赖管理。但功能却比iOS开发中的Cocoapod牛逼多了。

经常和Maven出现在一起的还有一个开源工具名叫Ant。同样是Apache门下的。

AntMaven最大的不同在于Ant是构建工具,Maven一般用于包管理及项目编译。顺便提一下还有一个常见的构建工具那就是Make。不同之处在于Make更多应用于c/c++ ,Ant更多应用于Java现在一般都是用Maven就可以了。

来看看Maven可以做哪些事情:

专用名词

在使用idea创建Maven项目的时候,会让你输入项目名称之类的。比如:

这里总结一下。

名词 作用
Project 任何你想 build 的事物,Maven都会把它们当作是一个 Project。这些 Project 被定义为 POM(Project Object Model)。一个 Project 可以依赖其他的project,一个 project 也可以有多个子project组成。
POM POM(pom.xml) 是 Maven 的核心文件,它是指示 Maven 如何工作的元数据文件,类似 ant 的 build.xml 文件。pom.xml 文件应该位于每个 Project 的根目录。
GroupId 顾名思义,这个应该是公司名或组织名。
ArtifactId 构建出来的文件名,一般来说或,这个也是project名。
Packaging 项目打包的类型,可以是将jar、war、rar、ear、pom,默认是jar。
Version 项目的版本,项目的唯一标识由 groupId+artifactId+packaging+versionz 组成。
Dependency 为了能够 build 或运行,一个典型的java project会依赖其他的包,在Maven中,这些被依赖的包就被称为 dependency。
Plug-in Maven是有插件组织的,它的每一个功能都是由插件提供的,主要的插件是由 java 来写的,但是他也支持 beanshell 和 ant 脚本编写的插件。
Repository 仓库用来存放artifact的,可以是本地仓库,也可以是远程仓库,Maven是有一个默认的仓库
Snapshot 工程中可以(也应该)有这样一个特殊的版本:这个版本可以告诉Maven,该工程正在处于开发阶段,会经常更新(但还未发布)。当其他工程依赖此类型的artifact时,Maven会在仓库中寻找该artifact的最新版本,并自动下载、使用该最新版本。

Maven命令

7天学会Maven(第一天——了解 Maven)

Maven 标准目录结构

好的目录结构可以使开发人员更容易理解项目,为以后的维护工作也打下良好的基础。

Maven2根据业界公认的最佳目录结构,为开发者提供了缺省的标准目录模板。Maven2的标准目录结构如下:

更!!!

2016-11-28

本地仓库、远程仓库

有全局和用户之分。如果更改用户下的配置只对当前用户起作用,更改全局的则对所有的用户起作用。

maven的仓库只有两大类:

<settings>
<localRepository>本地maven路径</localRepository>
</settings>
```

远程仓库配置

配置远程仓库将引入新的配置元素:<repositories> <repository><repositories>元素下,可以使用<repository>子元素声明一个或者多个远程仓库。

<updatePolicy>元素:表示更新的频率,值有:never, always,interval,daily, daily为默认值。

Have Fun!

上一篇 下一篇

猜你喜欢

热点阅读