文档章节

Linux Maven私服安装

小祝特烦恼
 小祝特烦恼
发布于 2017/04/19 10:24
字数 1208
阅读 488
收藏 1

Linux Maven私服安装


前景

我对maven私服其实并不感冒,国内阿里云的镜像已经可以满足日常工作需要,为什么想着去弄maven私服,想想也是件不得已的事情。

由于项目性质从项目外包发展到人力外包,小伙伴的办公场地和环境发生了变化,无网或者部分网络限制的情况也是深恶痛绝。因为项目涉及10个左右的程序,而且都是maven构建,前期都是带笔记本回家搞的,考虑到后期新员工的加入,所以我决定今天来搭建一个maven环境,方便项目使用。

操作系统

redhat 6.4

软件版本

软件 版本 下载
JDK 1.6.0_45 jdk-6u45-linux-x64.bin
MAVEN 3.0.4 apache-maven-3.0.4.tar.gz
NEXUS nexus-2.5.1-01 nexus-2.5.1-01-bundle.tar.gz

点击下载软件

操作步骤

安装JDK

  1. 用root用户(其他用户也可以)登录服务器,在/opt目录下创建jdk目录。

  2. 将jdk-6u45-linux-x64.bin上传到/opt/jdk目录下。

  3. 解压jdk-6u45-linux-x64.bin。

    ./jdk-6u45-linux-x64.bin
    
  4. 在/ect/profile文件底部,配置JDK环境变量后并保存。

    cd /etc
    vi profile
    
    ## 这是jdk环境变量
    export JAVA_HOME=/opt/jdk/jdk1.6.0_45
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$JAVA_HOME/bin:$PATH
    
  5. 使环境变量生效

    source profile
    
  6. 查看JDK是否安装成功。

    java -version
    
    java version 1.6.0_45
    Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
    Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
    

安装Maven

  1. 在/opt目录下创建maven目录。

  2. 将apache-maven-3.0.4上传到/opt/maven目录下。

  3. 解压apache-maven-3.0.4

    tar -zxvf apache-maven-3.0.4.tar.gz
    
    ll
    
    drwxr-xr-x. 2 root root  4096 Apr 18 14:10 bin
    drwxr-xr-x. 2 root root  4096 Apr 18 14:10 boot
    drwxrwxrwx. 2 root root  4096 Jan 17  2012 conf
    drwxrwxrwx. 3 root root  4096 Jan 17  2012 lib
    -rw-r--r--. 1 root root 11358 Jan 17  2012 LICENSE.txt
    -rw-r--r--. 1 root root  1007 Jan 17  2012 NOTICE.txt
    -rw-r--r--. 1 root root  2482 Jan 17  2012 README.txt
    
    
  4. 在/ect/profile文件底部,配置Maven环境变量后并保存。

    export MAVEN_HOME=/opt/maven/apache-maven-3.0.4
    export PATH=${PATH}:${MAVEN_HOME}/bin
    
  5. 使环境变量生效。

    source profile
    
  6. 查看Maven是否安装成功。

    mvn -v
    
    Apache Maven 3.0.4 (r1232337; 2012-01-17 16:44:56+0800)
    Maven home: /opt/maven/apache-maven-3.0.4
    Java version: 1.6.0_45, vendor: Sun Microsystems Inc.
    Java home: /opt/jdk/jdk1.6.0_45/jre
    Default locale: en_US, platform encoding: UTF-8
    OS name: "linux", version: "2.6.32-358.el6.x86_64", arch: "amd64", family: "unix"
    
    

安装Neuxs

  1. 在/opt目录下创建nexus目录。

  2. 将nexus-2.5.1-01-bundle.tar.gz上传到/opt/maven目录下。

  3. 解压nexus-2.5.1-01-bundle.tar.gz

    tar -zxvf nexus-2.5.1-01-bundle.tar.gz 
    
    ll
    
    drwxr-xr-x. 8 root root 4096 Jun 29  2013 nexus-2.5.1-01
    drwxr-xr-x. 3 root root 4096 Mar  5  2013 sonatype-work
    
  4. 启动nexus服务

    cd nexus-2.5.1-01/bin
    
    ./nexus start
    

    看到下述警告,说明没有启动成功,接着添加用户的执行,这里用到root用户。

    ****************************************
    WARNING - NOT RECOMMENDED TO RUN AS ROOT
    ****************************************
    If you insist running as root, then set the environment variable RUN_AS_USER=root before running this script.
    
    export RUN_AS_USER=root
    

    重新启动nexus服务

    ./nexus start
    
    Starting Nexus OSS...
    Started Nexus OSS.
    
  5. 访问http://ip:8081/nexus/。若出现如下页面,代表部署成功。 maven私服主页

上传本地仓库至私服仓库

这里采取了thirdparty这个仓库,服务器上对应仓库位置为/opt/nexus/sonatypework/nexus/storage/thirdparty

  1. 找到本机maven仓库位置。settings.xml中<localRepository>标签中的地址。这里以作者本机仓库地址为例E:\maven\m2\repository。

  2. 将E:\maven\m2\repository目录下所有内容上传至/opt/nexus/sonatype-work/nexus/storage/thirdparty目录下(等待上传完毕)。

  3. 登录maven私服,admin/admin123。点击Repositories。在3rd party上右键点击Repair Index,查看后台日志/opt/nexus/nexus-2.5.1-01/logs/wrapper.log。

    jvm 1    | 2017-04-19 09:56:16 INFO  [pxpool-1-thread-1]  org.sonatype.nexus.index.NexusScanningListener - Scanning of repositoryID="thirdparty" finished: scanned=4123, added=4123, updated=0, removed=0, scanningDuration=0:00:07.187
    jvm 1    | 2017-04-19 09:56:18 INFO  [pxpool-1-thread-1]  org.sonatype.nexus.index.DefaultIndexerManager - Publishing index for repository thirdparty
    jvm 1    | 2017-04-19 09:56:19 INFO  [pxpool-1-thread-1]  org.sonatype.nexus.tasks.RepairIndexTask - Scheduled task (RepairIndexTask) finished :: Repairing repository index "3rd party" from path / and below. (started 2017-04-19T09:56:08+08:00, runtime 0:00:10.658)
    jvm 1    | 2017-04-19 09:56:19 INFO  [pxpool-1-thread-1]  org.sonatype.nexus.configuration.application.DefaultNexusConfiguration - Applying Nexus Configuration due to changes in [Scheduled Task Configuration]...
    
    如出现上述信息,代表操作完成。Browse Index 和 Browse Storage tab页中有上传的目录结构。
    
  4. 点击3rd party的Repository Path,就会出现你想看到的东西啦。

settings.xml配置

  1. 在<mirrors>标签下配置如下内容,其他镜像内容注释掉。

        <mirror>
            <id>nexus-thirdparty</id>
            <mirrorOf>*</mirrorOf>
            <name>Nexus thirdparty</name>
            <url>http://ip:8081/nexus/content/repositories/thirdparty/</url>
        </mirror>
    

测试

  1. 复制一份settings.xml,并把本地仓库指向与之前不同的文件目录下。如之前目录为E:\maven.m2\repository,现指定仓库名称为E:\maven.m2\repository1
  2. 在开发工具中重新指定settings.xml的位置。
  3. 在项目的pom.xml中右键maven install。
  4. E:\maven.m2\repository1出现下载的包。如果下载不成功,一是前面的工作没做好,二是可能进行多次下载后,仓库中对应的包下有lastUpdate文件记得删除后重新操作步骤3。

© 著作权归作者所有

小祝特烦恼

小祝特烦恼

粉丝 39
博文 11
码字总数 9503
作品 0
南京
高级程序员
私信 提问
加载中

评论(3)

r
rickyyy
+2
悟空太多啦
悟空太多啦
👍
悟空太多啦
悟空太多啦
👍
Maven and Nexus2

Maven and Nexus2 Maven是什么? 构建工具: 通过简单的命令,能够完成清理、编译、测试、打包、部署等一系列过程。同时,不得不提的是,Maven是跨平台的,无论是在Windows、还是在Linux或M...

阿dai
2018/10/16
1K
6
Linux 使用nexus搭建maven私服

环境要求 系统:LINUX JDK:已安装 Maven:已安装(未安装详见maven安装教程) Nexus: 所有版本下载地址:https://www.sonatype.com/download-oss-sonatype Nexus是一个强大的Maven仓库管理...

muzi1994
2017/02/28
41
0
npm除了使用nodejs安装外,还能用什么工具或框架安装

需要在linux系统上用npm安装一个类似maven的私服服务器

追梦201609
2016/09/28
211
1
敏捷持续集成(Jenkins)

在前面已经完成git和gitlab的相关操作 1.持续集成的概念:

我想回家
2018/12/19
0
0
(搭建系列)centos7下搭建maven私服,以nexus3.x为例

maven仓库管理软件有这么几种: Apache Archiva,Artifactory,Sonatype Nexus 。这里我们以nexus为例搭建maven私服,这个用的最多吧。 一、下载相关文件 1、首先就是下载nexus 可以去官网下...

哥本哈根的小哥
09/26
48
0

没有更多内容

加载失败,请刷新页面

加载更多

Mybatis Plus删除

/** @author beth @data 2019-10-17 00:30 */ @RunWith(SpringRunner.class) @SpringBootTest public class DeleteTest { @Autowired private UserInfoMapper userInfoMapper; /** 根据id删除......

一个yuanbeth
今天
4
0
总结

一、设计模式 简单工厂:一个简单而且比较杂的工厂,可以创建任何对象给你 复杂工厂:先创建一种基础类型的工厂接口,然后各自集成实现这个接口,但是每个工厂都是这个基础类的扩展分类,spr...

BobwithB
今天
5
0
java内存模型

前言 Java作为一种面向对象的,跨平台语言,其对象、内存等一直是比较难的知识点。而且很多概念的名称看起来又那么相似,很多人会傻傻分不清楚。比如本文我们要讨论的JVM内存结构、Java内存模...

ls_cherish
今天
4
0
友元函数强制转换

友元函数强制转换 p522

天王盖地虎626
昨天
5
0
js中实现页面跳转(返回前一页、后一页)

本文转载于:专业的前端网站➸js中实现页面跳转(返回前一页、后一页) 一:JS 重载页面,本地刷新,返回上一页 复制代码代码如下: <a href="javascript:history.go(-1)">返回上一页</a> <a h...

前端老手
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部