[转]搭建Maven私服

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储OSS,敏感数据保护2.0 200GB 1年
简介:

在开发过程中,有时候会使用到公司内部的一些开发包,显然把这些包放在外部是不合适的。另外,由于项目一直在开发中,这些内部的依赖可能也在不断的更新。可以通过搭建公司内部的Maven服务器,将第三方和内部的依赖统一管理。

      这里使用Nexus来搭建本地的Maven服务器,过程比较简单。

      一、安装服务器

      1、下载

      我们可以在nexus的官网上找到它的相关介绍,下载地址是:http://nexus.sonatype.org/downloads/,在这里可以找到最新的版本,如果需要以前的版本,在官网上应该也可以找到下载地址。我下载的是:nexus-oss-webapp-1.8.0-bundle.tar.gz。关于Nexus的详细使用方法可以参照:Repository Management with Nexus.

      2、安装

      解压下载的文件:

      # tar xzvf nexus-oss-webapp-1.8.0-bundle.tar.gz

      解压后会在同级目录中,出现两个文件夹:nexus-oss-webapp-1.8.0和sonatype-work,前者包含了nexus的运行环境和应用程序,后者包含了你自己的配置和数据。

      3、启动nexus

      在上面的提到,nexus的运行环境在nexus-oss-webapp-1.8.0目录,下面就进入这个目录启动:

      # cd nexus-oss-webapp-1.8.0/bin/jsw/linux-x86-64/

      在这个目录下包含了一个文件夹和三个文件:lib、nexus、platform和wrapper,其中nexus就是启动命令。

      # ./nexus

      执行上面的命令,可以得到nexus命令的用法提示:start 命令启动,stop命令停止。下面启动nexus:

      # ./nexus start

      Starting Nexus OSS...

      Started Nexus OSS

      从控制台输出可以看到Nexus已经启动成功,我们可以通过log文件查看更详细的信息:

      # cd ~/nexus-oss-webapp-1.8.0/log

      # tail -f wrapper.log

      在log中可以看到nexus默认监听的端口是8081。那么我们就可以在浏览器中访问:http://host:8081/nexus,

     

       二、配置Nexus

       由于在新搭建的nexus环境中只是一个空的仓库,所以第一步就是要和远程的Maven中心仓库进行同步。

 

       如果在Reindex之后,并没有同步到远程的仓库,可以检查每个仓库的设置。下面是Maven Central的设置:

  

       三、在项目中使用私服

       在完成了上面的配置后,就可以将项目中默认的Repository切换为本地的私服了,只需要在pom.xml中增加repositories就可以了:

复制代码
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  
  <modelVersion>4.0.0</modelVersion>  
  
  <groupId>org.maven.demo</groupId>  
  <artifactId>MavenDemo</artifactId>  
  <version>0.0.1-SNAPSHOT</version>  
  <packaging>jar</packaging>  
  
  <name>MavenDemo</name>  
  <url>http://maven.apache.org</url>  
  
    <repositories>  
        <repository>  
            <snapshots>  
                <enabled>true</enabled>  
            </snapshots>  
            <id>public</id>  
            <name>Public Repositories</name>  
            <url>http://172.28.189.138:8081/nexus/content/groups/public/</url>  
        </repository>  
    </repositories>  
    <pluginRepositories>  
        <pluginRepository>  
            <id>public</id>  
            <name>Public Repositories</name>  
            <url>http://172.28.189.138:8081/nexus/content/groups/public/</url>  
        </pluginRepository>  
    </pluginRepositories>  
    <dependencies>  
        <dependency>  
            <groupId>junit</groupId>  
            <artifactId>junit</artifactId>  
            <version>4.8.1</version>  
            <type>jar</type>  
            <scope>compile</scope>  
        </dependency>  
    </dependencies>  
    <properties>  
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  
  </properties>  
</project>  
复制代码

       将pom.xml保存后,再回过头来了看去nexus管理界面看,就会发现junit已经被下载到本地的nexus服务器中了。

转载:http://www.cnblogs.com/lovesong/p/3916755.html

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
目录
相关文章
|
小程序 前端开发 数据挖掘
嘘!市面上短视频(douyin)“去水印”的工具原来是这样实现的
现在视频号非常火热,之前在做抖音和快手的人就直接把之前的视频直接搬运过来了。但是从抖音app下载的视频都是带官方水印的?这个是怎么去掉的?哦,不对,他们应该都有保 留原视频的吧。但是还有很多人是直接搬运别人的视频的,那他们是怎么去水印的呢? 其实早就有很多现成的工具,如小程序、去水印app都能直接去水印,甚至还有收费的。
1836 1
嘘!市面上短视频(douyin)“去水印”的工具原来是这样实现的
|
JSON 监控 Go
配置一网打尽:Viper与项目的完美融合
配置一网打尽:Viper与项目的完美融合
218 0
|
消息中间件 JSON Java
Spring Cloud Stream 整合Kafka
Spring Cloud Stream是一个构建消息驱动微服务的框架,抽象了MQ的使用方式, 提供统一的API操作。
Spring Cloud Stream 整合Kafka
|
存储 JSON 前端开发
一文搞懂 Go 1.21 的日志标准库 - slog
一文搞懂 Go 1.21 的日志标准库 - slog
433 2
|
消息中间件 算法 Java
金石推荐 |【算法数据结构专题】「延时队列算法」史上手把手教你针对层级时间轮(TimingWheel)实现延时队列的开发实战落地(上)
金石推荐 |【算法数据结构专题】「延时队列算法」史上手把手教你针对层级时间轮(TimingWheel)实现延时队列的开发实战落地(上)
215 1
|
数据安全/隐私保护
vscode访问和编辑远程服务器文件
vscode访问和编辑远程服务器文件
164 0
|
负载均衡 网络协议 Java
Nacos极简教程
Nacos是服务发现与注册,服务配置中心。 Nacos 具有如下特性: 服务发现和服务健康监测:支持基于DNS和基于RPC的服务发现,支持对服务的实时的健康检查,阻止向不健康的主机或服务实例发送请求; 动态配置服务:动态配置服务可以让您以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置; 动态 DNS 服务:动态 DNS 服务支持权重路由,让您更容易地实现中间层负载均衡、更灵活的路由策略、流量控制以及数据中心内网的简单DNS解析服务; 服务及其元数据管理:支持从微服务平台建设的视角管理数据中心的所有服务及元数据。 Nacos 为 C/S 架构,服务端 NacosServ
617 0
|
Java 数据库连接 数据库
你还在用分页?试试 MyBatis 流式查询,真心强大!
流式查询 指的是查询成功后不是返回一个集合而是返回一个迭代器,应用每次从迭代器取一条查询结果。流式查询的好处是能够降低内存使用。
|
关系型数据库 Java MySQL
springboot + mybatis-plus + com.alibaba.druid 配置postgresql数据库
配置mysql数据库正常,在执行postgresql查询数据库出现 [Druid-ConnectionPool-Create-1538095845] ERROR c.alibaba.druid.pool.DruidDataSource - create connection SQLException, url: jdbc:postgresql: errorCode 0, state 08P01 org.postgresql.util.PSQLException: 通讯协定错误,Session 初始化失败。
616 0
|
搜索推荐
142 推荐系统架构(淘宝和京东)
142 推荐系统架构(淘宝和京东)
346 0