搭建nexus服务并上传本地仓库

一. 搭建nexus服务

1.下载nexus-3.54.1-01-win64.zip

2.安装nexus

将下载 Nexus 安装包解压到本地磁盘,可获得 nexus-3.49.0-02 和 sonatype-work 2 个目录,如下图。


其中:

nexus-3.49.0-02:该目录中包含了 Nexus 3.x 运行所需要的文件,如启动脚本、依赖 jar 包等。
sonatype-work:该目录中包含了 Nexus 3.x 生成的配置文件、日志文件等。
打开nexus-3.49.0-02/bin 目录,其中nexus.exe就是运行的。当然无法直接点击启动,需要通过命令将服务安装后再进行运行。


使用管理员运行cmd:

安装服务:nexus.exe /install
启动服务:nexus.exe /start
带控制台的启动服务:nexus.exe /run
停止服务:nexus.exe /stop
卸载服务:nexus.exe /uninstall


安装好后在服务当中可以查看自己的nexus服务


启动后访问(启动可能会有点慢,多等一会就可以了):http://localhost:8081/

初始账号是:admin
初始密码在:sonatype-work\nexus3\admin.password中(登录进去会提示让你更改密码的)

紧接着还会提示你这个是否允许匿名访问,这里我建议选择否

在etc目录下有个nexus-default.properties可以配置端口号

具体参考:Nexus下载与安装详解-优快云博客

二. 导入本地仓库到nexus仓库

  1. 首先访问http://localhost:8081/并创建好pds-release仓库

  2. 编写PowerShell脚本,命名为: upload.ps1

# 配置参数
$nexusUrl = "http://localhost:8081"    # Nexus 地址
$repositoryName = "pds-release"     # 目标仓库名称
$username = "admin"                    # Nexus 账号
$password = "119124748"                 # Nexus 密码
$localRepoPath = "C:\baidunetdiskdownload\rep"  # 本地仓库文件夹路径

# 遍历本地仓库文件夹
Get-ChildItem -Path $localRepoPath -Recurse -File | ForEach-Object {
    $filePath = $_.FullName
    $relativePath = $filePath.Substring($localRepoPath.Length + 1)
    
    # 构建上传 URL(替换路径分隔符为 "/")
    $uploadUrl = "$nexusUrl/repository/$repositoryName/$($relativePath.Replace('\', '/'))"
    
    # 使用 curl 上传文件
    curl.exe -u "${username}:${password}" --upload-file "$filePath" $uploadUrl
    
    Write-Host "Uploaded: $relativePath"
}

  3. 使用管理员身份在 PowerShell 中执行:

Set-ExecutionPolicy Bypass -Scope Process  # 临时允许脚本执行
.\upload.ps1

如下图:

4.  去nexus仓库查看,已经上传成功:

三.maven设置,设置setting文件如下:

<server>
        <id>pds-release</id>
        <username>admin</username>
        <password>119124748</password>
    </server>
    <server>
        <id>pds-snapshot</id>
        <username>admin</username>
        <password>119124748</password>
    </server>
	<server>
        <id>pds-public</id>
        <username>admin</username>
        <password>119124748</password>
    </server>
  </servers>
  <mirrors>
     <mirror>
          <id>aliyun-public</id>
          <name>aliyun-public</name>
          <mirrorOf>!pds-public,*</mirrorOf>
          <url>https://maven.aliyun.com/repository/public</url>
      </mirror>
  </mirrors>
  <profiles>
    <profile>
      <id>pds-dev</id>

      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      
      <repositories>
        <repository>
            <id>pds-public</id>
            <name>pds-public</name>
            <url>http://localhost:8081/repository/pds-public/</url>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
                <checksumPolicy>warn</checksumPolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
          <id>central</id>
          <name>central</name>
          <url>https://repo1.maven.org/maven2/</url>
          <layout>default</layout>
          <releases>
              <enabled>true</enabled>
              <updatePolicy>always</updatePolicy>
              <checksumPolicy>warn</checksumPolicy>
          </releases>
          <snapshots>
              <enabled>true</enabled>
          </snapshots>
        </repository>
        <repository>
          <id>jcenter</id>
          <name>jcenter</name>
          <url>http://jcenter.bintray.com/</url>
          <layout>default</layout>
          <releases>
              <enabled>true</enabled>
              <updatePolicy>always</updatePolicy>
              <checksumPolicy>warn</checksumPolicy>
          </releases>
          <snapshots>
              <enabled>true</enabled>
          </snapshots>
        </repository>
      </repositories>

四. 编辑项目中的pom文件如下:

<properties>
        <!-- 发布参数 -->
        <pds-release.url>http://localhost:8081/repository/pds-release/</pds-release.url>
        <pds-snapshot.url>http://localhost:8081/repository/pds-snapshot/</pds-snapshot.url>
        <pds-3rd.url>http://localhost:8081/repository/pds-3rd/</pds-3rd.url>
        <pds-public.url>http://localhost:8081/repository/pds-public/</pds-public.url>
    </properties>
    <distributionManagement>
        <repository>
            <id>pds-release</id>
            <name>pds-release repository</name>
            <url>${pds-release.url}</url>
        </repository>
        <snapshotRepository>
            <id>pds-snapshot</id>
            <name>pds-snapshot repository</name>
            <url>${pds-snapshot.url}</url>
            <uniqueVersion>true</uniqueVersion>
        </snapshotRepository>
    </distributionManagement>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值