用Maven管理搭服务器管理系统(一)

以前的项目一直未使用过项目管理工具,现在发现越来越多的开源代码都是用maven构建的,所以决定要将这个大众流行的管理工具学习一下,方便自己日后找工作。

首先我们在安装Maven之前先了解它是做什么的?

官网上翻译:Maven是基于项目对象模型(POM即Project Object Model),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。

Maven的主要目标是为了使开发人员在最短的时间内领会项目的所有状态。为了达到这一目标,Maven考虑一下五个方面的内容:

1、使得构建过程更加容易,方便编译,打包,发布

2、为每个项目提供统一的配置

3、提供优质项目信息

4、最佳开发实践

5、安装和更新第三插件透明化

现在我们开始安装Maven

maven下载地址:http://maven.apache.org/release-notes-all.html

安装maven超级简单,总共分四步:

1.下载 Maven ,其实就是一个压缩包,解压一下

1.配置一下环境变量

有两个环境变量可以配置:

MAVEN_HOME = D:\maven\apache-maven-3.2.3

MAVEN_OPTS = -Xms128m -Xmx512m(可选)

2.在path变量末尾加入“%MAVEN_HOME%\bin;”。

以上M2_HOME 是必须要配置的,如果想让 Maven 跑得更快点,可以根据自己的情况来设置 MAVEN_OPTS。 

3.最后,验证是否安装成功

现在我们打开 cmd,输入:

mvn -v

我想您一定会看到一些信息,如下图所示: 

恭喜您,Maven 安装成功!

在使用 Maven 之前,我们必须要了解一下 Maven 到底是怎样管理 jar 包的,这就是 Maven 仓库要干的活了。

了解Maven仓库

使用 Maven 给我们带来的最直接的好处,就是统一管理jar 包,那么这些 jar 包存放在哪里呢?它们就在您的 本地仓库 中,默认地址位于 C:\Users\用户名.m2 目录下(当然也可以修改这个默认地址),下面我们就修改一下这个默认地址。

实际上我们可以将本地仓库理解“缓存”,目的是存放jar包。开发项目时项目首先会从本地仓库中获取 jar 包,当无法获取指定 jar 包的时候,本地仓库会从 远程仓库(或 中央仓库) 中下载 jar 包,并“缓存”到本地仓库中以备将来使用。

远程仓库(中央仓库)是 Maven 官方提供的,可通过 http://search.maven.org/ 来访问。这样一来,本地仓库会随着项目的积累越来越大。通过下面这张图可以清晰地表达项目、本地仓库、远程仓库之间的关系。

既然 Maven 安装了,那么本地仓库也就有了,默认路径在我们C盘目录下,对于专业人士来说C盘很危险,下面我们修改一下默认配置。

配置

Maven会将下载的类库(jar包)放置到本地的一个目录下,如果想重新定义这个目录的位置就需要修改Maven本地仓库的配置:

修改文件:D:\maven\apache-maven-3.2.3\conf\setting.xml

<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">      <!-- localRepository       | The path to the local repository maven will use to store artifacts.       |       | Default: ${user.home}/.m2/repository      <localRepository>/path/to/local/repo</localRepository>      -->              <localRepository>D:\maven\repository</localRepository></settings>

依据该配置,Maven就会将下载的类库保存到D:\maven\repository中。

实验一下我们刚才做的事情产生作用没有,控制台输入:

mvn help:system

如图所示效果: 

如果没有任何问题,执行完该命令之后,在D:\maven\repository下面就会多出很多文件,这些文件就是maven从中央仓库下载到本地仓库的文件,maven已经开始为我们工作了。

在Eclipse IDE中安装Maven插件

安装IDE Plugins的方法有很多。其一:在线安装,通过Help-->Install New Software的方式,输入HTTP地址来安装,简单易操作,但是也优缺点,就是下载速度慢,或者有的时候干脆搜索不到要安装的插件。使用第一种方式来安装,输入 http 地址:http://m2eclipse.sonatype.org/sites/m2e,把选项勾上,然后等待它  下载安装,完成之后重启 eclipse 即可。

其二:使用离线插件包,下载地址。接下来我们使用两种方式来安装 eclipse-maven3-plugin.7z,一个是通过link文件方式来安装插件,另一个是粗暴但直接简单的方式(直接将相关文件复制到对应文件夹内)。

link方式(自定义方式):

1. 在你的 eclipse 安装的根目录下创建两个文件夹:links,mavenPlugins(文件夹名称可自定义),把eclipse-maven3-plugin.7z解压后的features和plugins文件夹放到mavenPlugins文件夹下(必须如此,注意解压后文件夹的嵌套情况)。

3. 在 links 目录下创建一个maven.link(文件名称可自定义)文件,打开并输入:path=mavenPlugins文件夹绝对路径(需要注意文件夹路径中是"/"或者"\\"  而不是"\" )。

4. 重启 eclipse,启动后你打开Window ---> Preferences 会发现一个多了一个选项Maven,说明安装成功了。

直接粗暴的方式:

将解压后的子文件夹features和plugins的jar包文件分别导入Eclipse安装目录下的features和plugins文件夹内,然后重启Eclipse就可以在Preferences中看到Maven选项了。即Maven插件配置成功。


关于Nexus私服安装(项目组使用)

Nexus是Maven仓库管理器,也可以叫Maven的私服。Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact。Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。

Nexus不是Maven的核心概念,它仅仅是一种衍生出来的特殊的Maven仓库。对于Maven来说,仓库只有两种:本地仓库和远程仓库。

本地仓库就是我们在maven的setting.xml中配置的本地仓库地址。由于最原始的本地仓库是空的,Maven必须知道至少一个可用的远程仓库,才能在执行Maven命令的时候下载到需要的构件。

中央仓库是maven默认的远程仓库。

私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件。有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库;否则,私服请求外部的远程仓库,将构件下载到私服,再提供给本地仓库下载。

为什么使用Nexus?

1、节省外网带宽。

大量对于外部仓库的重复请求会消耗带宽,利用私服代理外部仓库,可以消除对外的重复构件下载,降低带宽的压力。

2、加速Maven构建。

不停地连接请求外部仓库十分的耗时,Maven在执行构建的时候不停地检查远程仓库的数据。利用私服,Maven只检查局域网的数据,提高构建的速度。

3、部署第三方构件。

当某个构件无法从任何一个外部远程仓库获得。建立私服之后,便可以将这些构件部署到私服,供内部的Maven项目使用。

4、提高稳定性,增强控制。

Maven构建高度依赖于远程仓库,因此,当网络不稳定的时候,Maven构建也会变得不稳定,甚至无法构建。私服缓存了大量构建,即使暂时没有网络,Maven也可以正常的运行。

5、降低中央仓库的负荷。

使用私服可以避免很多对中央仓库的重复下载,降低中央仓库的压力。

安装Nexus

Nexus专业版是需要付费的,我们使用的开源版Nexus OSS。Nexus提供了两种安装方式,一种是内嵌Jetty的bundle,只要你有JRE就能直接运行。第二种方式是不包含容器的WAR包,你只须简单的将其发布到web容器中即可使用。

Nexus下载:

下载地址:http://www.sonatype.org/nexus/go,下载最新版本的Nexus,我使用的是nexus-2.8.1-bundle。

Bundle方式安装:

1、将nexus-2.8.1-bundle.zip解压至任意目录,如:D:\tools\maven。这是会得到如下两个目录:

1.1、nexus-2.8.1-01:该目录包含了Nexus运行所需要的文件,如启动脚本、依赖jar包等。

打开目录\nexus-2.8.1-01\bin\jsw这个目录下面你会发现有很多系统版本的nexus环境,如下图:

我的电脑是windows的系统,我打开一个文件夹,文件夹包含是nexus的命令,如下图:

1.2、sonatype-work:该目录包含Nexus生成的配置文件、日志文件、仓库文件。该目录不是必须得,Nexus会在运行的时候动态的创建,不再过多的介绍。

2.、为方便启动和退出Nexus,将bin添加到环境变量。

3.、使用命令nexus install将nexus安装到windows的服务中。

Nexus启动成功了,然后打开浏览器,访问http://localhost:8081/nexus,你会看到如下的页面:

要停止Nexus,Ctrl+C即可,也可以使用stop命令。

WAR方式安装:

你需要有一个能运行的webapp的容器,这里以Tomcat为例,加入Tomcat的安装目录位于D:\tools\apache-tomcat-6.0.18 ,首先我们将下载的nexus-webapp-1.3.0.war 重命名为nexus.war ,然后复制到D:\tools\apache-tomcat-6.0.18\webapps\nexus.war ,然后启动CMD,cd到D:\tools\apache-tomcat-6.0.18\bin\ 目录,运行startup.bat 。一切OK,现在可以打开浏览器访问http://127.0.0.1:8080/nexus,你会得到和上图一样的界面。

 登录

点击右上角 Log In,使用用户名:admin ,密码:admin123 登录,可使用更多功能。

以上文章均来自网络,安装软件大致都是一样的,感谢原作者提供,本人按照以上安装成功。

时间: 2024-11-04 19:34:56

用Maven管理搭服务器管理系统(一)的相关文章

用Maven管理搭服务器管理系统(二)

用Maven创建web项目这里我就不多说了,不会的网上查找. 从今天开始搭建一套网上开源的服务器管理系统-蓝缘2.0,项目功能很简单,主要是权限管理这块,框架技术springMVC+springSecurity3.x+Mybaits3.x,项目在官网上也有展示,提供商业版,这种就属于自己卖自己的产品,不过现在网上很多好的开源项目都缺少相应的文档,说是开源,但是不分享项目业务以及项目逻辑.搭建过程以及技术框架,很多人拿到源码也是不知道怎么去用,经常会遇到部署出现问题,我并不是喷那些分享代码的人,只

用 Puppet 搭建易管理的服务器基础架构(1)

我通过伯乐在线翻译了一个Puppet简明教程,一共分为四部分,这是第一部分. 原文地址:http://blog.jobbole.com/87679/ 本文由 伯乐在线 - Wing 翻译,黄利民 校稿.未经许可,禁止转载!英文出处:Manue Kiessling.欢迎加入翻译组. 关于 Puppet Puppet 是一种 Linux.Unix.Windows 平台的集中配置管理系统,使用自有的 Puppet 描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.Puppet把这些系统

【分享】wdcp服务器管理系统常用维护工具

wdcp (WDlinux Control Panel) 是一套用PHP开发的Linux服务器管理系统,类似国外流行的cpanel,旨在易于使用和管理Linux服务器,可以在线通过网页管理服务器和虚拟主机.简单,方便,易操作.只有Linux版本,没有windows版本,让你方便地使用和管理Linux服务器,让不懂Linux的人也可以用Linux做服务器了.支持CentOS/RedHat/ubuntu/wdlinux_base/wdos 版本. 接下来我们分享一下wdcp常用的工具及命令 强制修改

JavaEE开发使用Maven管理的SpringMVC工程

前几篇博客已经陆陆续续的聊了一些Spring的东西,今天博客我们就来聊一下SpringMVC.SpringMVC目前在JavaEE开发中可谓占据一席之地,用起来也是比较顺手的.低耦合,高内聚,利用一些注解以及Java配置类就能很好的实现解耦.今天我们就来看一下如何使用Maven来配置SpringMVC, 然后在我们的Web工程中进行使用. 本篇博客是上一篇博客的续写,在上篇博客中我们详细的讲了Java环境的配置,Java EE版本的Eclipse的安装.Maven的安装与配置,Tomcat的安装

IntelliJ IDEA 12创建Maven管理的Java Web项目(图解)

http://blog.csdn.net/zht666/article/details/8673609 本文主要使用图解介绍了使用IntelliJIDEA 12创建Maven管理的Java Web项目的过程. 本文PDF文档下载地址:http://download.csdn.net/detail/zht666/5141235 1.新建项目,选择Maven Module,输入项目名称,点击Next继续. 注意这里的Module就是项目的意思,等同于MyEclipse中的Project.  接着直接

基于springboot&amp;mybatis的销售管理系统轻量级销售团队管理-java销售管理系统

基于springboot&mybatis的销售管理系统轻量级销售团队管理-java销售管理系统 1.包含源程序,数据库脚本.代码和数据库脚本都有详细注释.2.课题设计仅供参考学习使用,可以在此基础上进行扩展完善开发环境:Eclipse for J2EE, MYSQL5.1, JDK1.8, Tomcat 7涉及技术点:MVC模式.Mybatis.SpringBoot.HTML.JavaScript.CSS.JQUERY.DWR.Ajax等系统采用Mybatis框架实现ORM对象关系映射,前台JS

基于SSM的图书管理系统(读者管理借阅管理)-java图书管理系统图书馆管理

基于SSM的图书管理系统(读者管理借阅管理)-java图书管理系统图书馆管理 1.包含源程序,数据库脚本.代码和数据库脚本都有详细注释.2.课题设计仅供参考学习使用,可以在此基础上进行扩展完善开发环境:Eclipse ,MYSQL,JDK1.7,Tomcat 7涉及技术点:MVC模式.SpringMvc.Mybatis.Spring.HTML.JavaScript.CSS.JQUERY.DWR.Ajax等系统采用Mybatis框架实现ORM对象关系映射,前台JSP实现,后台springMvc映射

配置与管理NFS服务器

配置与管理NFS网络文件系统 姓名:马雪敏 专业:网络工程 NFS介绍 NFS=network  file system NFS最早是由Sun公司于1984年开发出来的,其目的就是让不同计算机不同操作系统之间可以彼此共享文件. 由于NFS使用起来非常方便,因此很快得到了大多数的UNIX/Linux系统的广泛支持,而且还被IETE(国际互联网工程组)制定为RFC1904.RFC1813和RFC3010标准 NFS使用的是C/S模式,我们今天会学习服务器的架设,和client的使用 NFS的几大好处

配置与管理Apache服务器

配置与管理Apache服务器 姓名:马雪敏 专业:网络工程 一.Apache服务的安装.启动.停止 1.Apache相关软件 httpd软件是Apache服务器的程序软件包(RHEL 6) httpd-2.2.15-29.el6_4.i686 2. 安装Apache服务 2.1可以先使用下面的命令检查系统是否安装了Apache服务 在这里系统已经安装了Apache服务; 2.2如果系统没有安装Apache服务,可以使用以下命令进行安装: (1)挂载光盘 mount   /dev/cdrom