1:准备资源

     linux服务器,jdk和nexus  安装包 
 
2:网络通畅,保持windows端和linux服务器端网络通畅。
 
 
3: 安装jdk和配置环境变量
     进入到jdk安装文件的目录夹 usr/java
         1: 进入到安装文件的目录夹  cd ~命令到根目录下  在cd usr/java
         2:授权 chmod 755 jdk-7u55-linux-x64.tar.gz
         3: tar -zxvf jdk-7u55-linux-x64.tar.gz
     mv 解压的文件夹名  jdk1.7
 
修改 /etc/profile文件  加入以下内容
 export JAVA_HOME=/usr/java/jdk1.7
export JAVA_BIN=/usr/java/jdk1.7/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH
 
java -version 进行测试
 
 
4:安装nexus
   
 解压安装包
     
 tar -zvxf nexus-2.1.2-bundle.tar.gz
     
解压后会在同级目录中,出现两个文件夹:nexus-2.1.2和sonatype-work,前者包含了nexus的运行环境和应用程序,后者包含了自己的配置和数据。
     
3:配置nexus  
在/usr/java/nexus-2.1.2/jsw/linux-x86-32(当前系统版本,注意操作系统位数)下的nexus文件在中约20行处加入RUN_AS_USER=用户名(用户名如root用户) 
 
4:启动nexus
 cd到/usr/java/nexus-2.1.2/jsw/linux-x86-32目录下,再./nexus
start命令启动nexus。./nexus status 检查nexus启动状态,./nexus stop停止nexus。
   
(高版本的nexus和低版本的启动文件不在同一级别目录下,需要注意)
 
可能出现nexus 启动失败:
1:在自己的服务器上搭建出现了启动不了的问题,经过检查,是因为操作系统版本引发的openjdk的问题,需要把/etc/selinux/config和/etc/sysconfig/selinux两个文件中设置SELINUX=enforcing。
2:jdk版本问题启动失败
3:nexus安装有问题
4:防火墙为运行该端口,关闭防火墙或者允许改端口权限。
可从日志文件中查看异常信息。
 
访问nexus
     
 
 到这一步,如果都正常到这里,并且宿主机和linux的网络是ping通的,那么可以在宿主机和linux端任意端输入http://服务器
ip:8081/nexus/访问到nexus的主页,8081为端口,可以在/usr/java/nexus-2.1.2/conf下的
nexus.properties文件中进行端口修改
)。默认用户名和密码:admin/admin123,可以开始对nexus进行管理。
 
配置中央仓库
进入nexus主页以后,点击左边导航栏的Repositories,界面的主面板会显示所有所有仓库及仓库组的列表,它们的Type字段的值有group,hosted,proxy,virtual。这里先不关心virtual,只介绍下另外三种类型:
hosted,本地仓库,通常我们会部署自己的构件到这一类型的仓库,比如公司的第二方库。 
proxy,代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库。 
group,仓库组,用来合并多个hosted/proxy仓库,当项目希望在多个repository使用资源时就不需要多次引用了,只需要引用一个group即可。
由此知道,需要配置一个Maven中央仓库的proxy,其实Nexus已经内置了Maven
 Central,但需要做一些配置。点击仓库列表中的Maven
 Central(有的版本是Central),注意到它的Policy是release,这说明它不会代理远程仓库的snapshot构件,英文远程仓
库的snapshot版本构件不稳定且不受我们控制,使用这样的构件含有潜在的风险。发现主面板下方有三个Tab,分别为
Browse,Configuration和Mirrors,点击Configuration进行配置,你现在需要关心的是两个配置项:“Remote
 Storage Location”为远程仓库的地址,对于Maven
Central来说是http://repo1.maven.org/maven2/;“Download Remote
 Indexes”顾名思义是指是否下载远程索引文件,Maven
 Central的该字段默认为False,这是为了防止大量Nexus无意识的去消耗中央仓库的带宽(中央仓库有大量的构件,其索引文件也很大)。这里
需要将其设置为True,然后点击Save。在Nexus下载的中央仓库索引文件之后,就可以在本地搜索中央仓库的所有构件
 
 
有几个项目是我们可能会经常用到的:
Override local storage location:
在这个选项你可以配置Nexus本地仓库的存放地址,用来覆盖其默认的存放地址
Remote storage location:
这里是远程仓库的地址,为了提高代理速度,默认值是http://repo1.maven.org/maven2/
Download remote indexes: 这里配置是否下载远程索引文件,模式是false,
建议配置为true,这样可以通过索引文件来搜索需要的构件。
 
 
前面看到类型为hosted的为本地仓库,Nexus预定义了3个本地仓库,分别是Releases, Snapshots,
3rd Party. 
 
 
Releases: 这里存放我们自己项目中发布的构建, 通常是Release版本的, 比如自己做了一个ofbiz
Server的项目, 生成的构件为ofbizserver.war,
我们就可以把这个构建发布到Nexus的Releases本地仓库
Snapshots: 这个仓库非常的有用, 它的目的是让我们可以发布那些非release版本, 非稳定版本,
比如我们在trunk下开发一个项目,在正式release之前你可能需要临时发布一个版本给其他同事使用,
因为同事也正在依赖你的模块开发, 那么这个时候就可以发布Snapshot版本到这个仓库,
同事就可以通过简单的命令来获取和使用这个临时版本.
3rd Party: 顾名思义, 第三方库,  这里的是指可以添加自己的第三方库,
比如有些构件在中央仓库是不存在的. 比如在中央仓库找不到Oracle 的JDBC驱动, 这个时候就需要自己添加到3rd
party仓库。
 
 
 
搜索构建其实就是将nexus与远程库进行索引同步的过程,这里要求服务器网络通讯正常。在实际使用构件的过程中通常遇到一个问题,有时候紧紧知道所需要的构建的大致名字,并不知道全称或group
id, 这是件非常头疼的事情. Nexus基于Nexus indexer的搜索功能解决了这个问题.
 
要是用搜索功能, 必须要有索引文件,
Nexus默认是不建立索引文件的,因为像中央仓库这样的索引文件的建立需要耗费比较大的网络资源,仅索引文件就要几十兆.
要开启中央仓库的索引文件下载功能需要在Maven Central的配置页面, 我们需要把三个代理仓库与远程网络仓库同步,把Apache
Snapshots ,Central,和CodeHaus Snapshots中Configuration的Download
Remote Indexes选择true,下载同步索引。
 
 
 同步完成以后可查看已经同步的组件,如果下载失败,大部分是以为网络问题,所以一定要保持网络通畅,第一次同步时间可能比较久,资源比较大。可以通过手动下载开源组件仓库,配置进nexus,就可以不需要下载也能拥有开源的资源库。
 
在maven项目中使用nexus中的jar资源
 上传在私服仓库,建议上传在3rd Party
 
 
需要在meven工程中pom.xml配置以下资源
true
public
Public Repositories
http://IP:8081/nexus/content/groups/public/
public
Public Repositories
http://IP:8081/nexus/content/groups/public/
 
如果有很多很多的maven project
,这么做肯定是不合理的,我们在maven的settings.xml中做总的配置就ok了。
 
1:加入一个server
   
 
2:加入一个profile和settings标签中加入activeProfiles。注意和profiles同一级别
 注意IP修改 以及 server的id和profile id的一致性
 
   
  
 
 

linux环境下jdk 安装以及maven私服搭建的更多相关文章

  1. linux环境下jdk安装以及配置

    linux 环境安装jdk和配置环境变量: (此处以root用户安装,此方式安装一台虚拟机装一个jdk即可,所有普通用户可以共用) 1.下载安装jdk 链接: https://pan.baidu.co ...

  2. linux环境下jdk安装

    1,下载jdk版本 jdk-7u25-linux-x64.tar.gz  和windows jdk一致,jvm有区别: 2,拷贝到 /home目录下.通过tar -zxvf jdk-7u25-linu ...

  3. CentOS环境下jdk安装部署

    1.准备jdk安装文件: 这里我使用的是 jdk-7u79-linux-x64.tar.gz 2.在 /usr/local 目录下创建 sotfware目录,并上传JDK文件: 解压文件并修改文件夹为 ...

  4. centos6.9环境下JDK安装部署

    1.准备jdk安装文件: 这里我使用的是 jdk-7u79-linux-x64.tar.gz 2.在 /usr/local 目录下创建 sotfware目录,并上传JDK文件: 解压文件并修改文件夹为 ...

  5. centos6.9环境下JDK安装

    1.准备jdk安装文件: 这里我使用的是 jdk-7u79-linux-x64.tar.gz 2.在 /usr/local 目录下创建 sotfware目录,并上传JDK文件: 解压文件并修改文件夹为 ...

  6. 全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】

    <ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入D ...

  7. 全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】

    安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装 ...

  8. Linux 环境下 Lua 安装(转)

    系统环境:CentOS-6.2-x86_64. Lua 是嵌入式脚本语言,应用场景很广泛. 引自官网:Lua is used in many products and projects around ...

  9. 基础--Redis在Linux环境下的安装

    1. 安装redis服务 1.1 检查安装依赖程序 yum install gcc-c++yum install -y tclyum install wget 1.1.1 下载redis安装包 (或者 ...

随机推荐

  1. 初学Java ssh之Spring 第四篇

    今天我来学习学习Spring中Bean. 在Spring中原来还有<beans.../>标签啊,它相当于<bean.../>标签的老爸,老爸可以有很多个儿子,但是老爸只有一个哦 ...

  2. 忘记了SqlServer的SA密码怎么办

    转自 http://v-consult.be/2011/05/26/recover-sa-password-microsoft-sql-server-2008-r2/ 如果忘记了sa密码,并且wind ...

  3. 在同个类中non-const插入const来减少重复

    class A { private: std::string a; public: A(std::string b) :a(b){} const char& operator[](int b) ...

  4. C/C++中字符串存储位置

    代码: #include <iostream> #include <cstdio> using namespace std; void fun(char **p){ //cha ...

  5. POJ 1064 Cable master(二分查找+精度)(神坑题)

    POJ 1064 Cable master 一开始把 int C(double x) 里面写成了  int C(int x) ,莫名奇妙竟然过了样例,交了以后直接就wa. 后来发现又把二分查找的判断条 ...

  6. Debian8 部署 laravel 5.3 (php7.0 + nginx)

    web根目录:/var/www/html 更换 apt-get 源cd /etc/apt/sources.listdeb http://ftp.debian.org/debian jessie mai ...

  7. jQuery ajax传递特殊字符串问题

    当你用ajax传递值到服务器端,如果值中包含特殊字符串如+,&等,在服务器端获取的结果可能就会出现差异,因为这些字符有其它用途,如“+”表示连接符,在转义后你获取到的就是空格.可以看看这些特殊 ...

  8. ExtJS4.2.1

    ExtJS4.2.1 1. 介绍 1.1 说明 ExtJS是一个用javascript.CSS和HTML等技术实现的主要用于创建RIA即富客户端,且与后台技术无关的前端Ajax框架. 常用于企业内部管 ...

  9. Spring MVC 和Struts2对比

    Spring MVC和Struts2的区别: 1. 机制:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同. ​2. 性能:spring会稍微比s ...

  10. Android4.0强制横屏竖屏

    Android的启动默认是横屏或者竖屏我们的TV本来是横屏显示,但是有客户竟然要竖屏显示,昨天快下班收到的需求,竟然说7.19就要搞定.思路有2个,一个就是修改LCD的默认输出,但是这个不是我这个水平 ...