前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring+SpringMVC+MyBatis+easyUI整合基础篇(五)讲一下maven

Spring+SpringMVC+MyBatis+easyUI整合基础篇(五)讲一下maven

作者头像
程序员十三
发布2018-03-15 14:14:46
6351
发布2018-03-15 14:14:46
举报
文章被收录于专栏:程序员有故事程序员有故事

作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载。

前言

项目展示地址,点这里http://ssm-demo.hanshuai.xin,账号:admin 密码:123456

下一篇文章开始,所有的项目源码都是与maven整合后的代码了,所以这一篇讲一讲maven。

简单介绍

我们看一下github上一些开源项目的目录结构,下图中有mybatis、netty、dubbo这些比较有影响的项目,在每个项目中都可以看到一个pom.xml文件,这就是maven的配置文件。

maven
maven

那么maven是什么呢?

百度百科中是这么说的

Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。

当然,继续看下去,还是会有很多专业名词,如果你是刚入门的话,可以暂时不去看这些,有时间可以慢慢研究。其实Maven是一个项目管理和整合的工具,并且为开发者提供了一套完整的构建生命周期框架。

使用感受

以前经常碰到的情况就是,往往一个跳槽来的新同事会问,“用过maven吗?怎么不用maven?”等问题,也是有些尴尬的搭不上话,偶尔在网上看代码的时候也会看到maven项目,但是不会用。那时候也就是因为刚入行,人比较懒吧,也不去看不去学。其实很多人一开始对于maven的印象,认为maven就是一个下载jar包的插件而已,我一开始也是一样,并不是太在意,上手了一段时间后,才体会到maven不仅仅是一个管理jar包依赖的工具。

按我的理解,maven有茫茫多的好处,比如:

  • 方便管理各种库文件依赖
  • 标准化构建流程
  • 提升开发者效率
  • 在持续集成中扮演重要作用。

对于开发效率和部署效率的提升真的是使我印象深刻,流程的标准化也可以减少很多人为因素可能带来的错误,当然,如果还没有上手过maven项目的来说,我的建议最好是赶紧将maven整合进项目中,以上的种种好处你也会慢慢体验到,而且网上教程资源那么多,完全不用担心无法入门,想要进阶的话也可以看看《Maven实战》这本书。

在这篇文章中我也只是简单讲一下自己对于maven的使用心得,总结的有些简单,其实是想告诉看到此文的你,像maven、gradle这些可以明显提升开发效率的工具真的要用到项目中,一个高效率的工作状态应该是我们每一个技术人的追求。

安装与整合

大致总结了以下步骤:

  • 1、下载官方文件
  • 2、解压并配置maven的环境变量
  • 3、执行maven -v 验证
  • 4、与开发软件整合

windows下maven的安装点这里

linux下maven的安装点这里

安装后就是与eclipse或者idea等开发软件整合的事情啦。

eclipse与maven整合点这里 idea与maven整合点这里

这些都是需要自己花点时间去研究的东西,而且网上教程也多,就直接放了感觉不错的教程的链接地址。

Maven仓库

由于默认的仓库地址是国外网址,会对下载速度有一定的影响,下载jar包时,如果没有将仓库设置为国内链接的话,可能会导致下载慢的情况,这种情况也很好解决,设置国内镜像或者国内仓库,当然也可以自己搭建私服,有时间的话会单独写一个搭建私服的文章,想了解的也可以自己先搜一下相关教程。

推荐一个搜索jar包的maven依赖时常用地址:http://mvnrepository.com/

几个国内可用的maven repository连接: http://maven.oschina.net/content/groups/public/ http://maven.oschina.net/content/repositories/thirdparty/

首推的是阿里云的Maven仓库地址:

代码语言:javascript
复制
<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>*</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

setting.xml文件

settings.xml文件是用来设置maven参数的配置文件,并且,settings.xml是maven的全局配置文件,而pom.xml文件是所在项目的局部配置。

settings.xml中包含类似本地仓储位置、修改远程仓储服务器、认证信息等配置。

关于setting.xml介绍可以看一下这篇文章

下面是一个settings.xml的示例文件:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <!-- 本地仓库:本地存放jar包的文件夹位置 -->
    <localRepository>/xx/xx</localRepository>
    <pluginGroups>
    </pluginGroups>
    <proxies>
    </proxies>
    <servers>
    </servers>
    <!--加速镜像,也可以考虑阿里云的maven镜像 -->
    <mirrors>
        <mirror>
            <id>UK</id>
            <mirrorOf>central</mirrorOf>
            <url>http://uk.maven.org/maven2</url>
        </mirror>
        <mirror>
            <id>net-cn</id>
            <mirrorOf>central</mirrorOf>
            <url>http://maven.net.cn/content/groups/public/</url>
        </mirror>
        <mirror>
            <id>osc</id>
            <mirrorOf>central</mirrorOf>
            <url>http://maven.oschina.net/content/groups/public/</url>
        </mirror>
        <mirror>
            <id>osc_thirdparty</id>
            <mirrorOf>thirdparty</mirrorOf>
            <url>http://maven.oschina.net/content/repositories/thirdparty/</url>
        </mirror>
    </mirrors>
    <profiles>
        <profile>
            <id>osc</id>
            <activation>
                <!--当前使用的远程仓库为osc-->
                <activeByDefault>true</activeByDefault>
            </activation>
            <repositories>
                <repository>
                    <id>osc</id>
                    <!--当前使用的远程仓库地址 -->
                    <url>http://maven.oschina.net/content/groups/public/</url>
                </repository>
                <repository>
                    <id>osc_thirdparty</id>
                    <url>http://maven.oschina.net/content/repositories/thirdparty/</url>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                    <id>osc</id>
                    <url>http://maven.oschina.net/content/groups/public/</url>
                </pluginRepository>
            </pluginRepositories>
        </profile>
        <profile>
            <id>net-cn</id>
            <repositories>
                <repository>
                    <id>net-cn</id>
                    <url>http://maven.net.cn/content/groups/public/</url>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                    <id>net-cn</id>
                    <url>http://maven.net.cn/content/groups/public/</url>
                </pluginRepository>
            </pluginRepositories>
        </profile>
    </profiles>
</settings>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 简单介绍
  • 使用感受
  • 安装与整合
  • Maven仓库
  • setting.xml文件
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档