idea本地对Nexus进行上传文件

本文详细介绍了如何下载并启动Nexus服务器,包括宿主仓库、代理仓库和仓库组的设置。同时,讲解了在Maven的settings.xml中配置Nexus的步骤,以及资源的上传和下载路径。此外,还提供了自定义私服的配置示例,帮助读者理解如何管理和使用Nexus作为本地Maven仓库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下载Nexus

首先先下载 Nexus

cmd进入对应的路径

服务器 启动 nexus /run nexus
端口号 8081
访问地址 http://localhost:8081

私服资源划分

  1. 宿主仓库hosted
    保存无法从中央仓库获取的资源
  2. 代理仓库proxy
    代理仓库 通过nexus访问其他公共仓库 例如中央仓库
  3. 仓库组group
    讲若干个仓库组成一个群组 简化配置
    仓库组不能保存资源 属于设计性仓库

nexus资源上传

保存的位置(宿主仓库)
资源文件
对应坐标

再maven中的setting.xml中进行配置

<!-- 配置访问服务器的权限  用户密码-->
<servers>
    <server>
        <id>dushaoqin-release</id>
        <username>admin</username>
        <password>admin</password>
    </server>
    <server>
        <id>dushaoqin-snapshots</id>
        <username>admin</username>
        <password>admin</password>
    </server>
</servers>

自定义私服
对应添加路径公共路径

<!-- 自定义duhsaoqin私服  -->
<mirror>
      <id>nexus-dushaoiqn</id>
      <name>*</name>
      <url>http://localhost:8081/repository/maven-public/</url>
      <mirrorOf>central</mirrorOf>
    </mirror>

自己本地的setting要和当前安装的私服保持一致

资源发布

设置私服访问权限
设置资源上传路径(私服宿主仓库地址)
设置资源下载路径(私服仓库组地址)
    <distributionManagement>
        <repository>
            <id>dushaoqin-release</id>
            <url>http://localhost:8081/repository/dushaoqin-release/</url>
        </repository>

        <snapshotRepository>
            <id>dushaoqin-snapshots</id>
            <url>http://localhost:8081/repository/dushaoqin-snapshots/</url>
        </snapshotRepository>

    </distributionManagement>
### 如何使用自定义 settings 文件本地 jar 包部署到 Maven 私服 要实现通过指定的 `settings.xml` 文件本地 JAR 包上传Maven 私服,可以按照以下方法操作: #### 1. 配置自定义 `settings.xml` 文件 创建或编辑一个独立的 `settings.xml` 文件,用于存储 Maven 私服的相关认证信息。该文件应包含 `<servers>` 节点来配置私服仓库的用户名和密码。 ```xml <settings> <servers> <server> <id>releases</id> <!-- 对应 pom.xml 中 distributionManagement 的 id --> <username>your-username</username> <password>your-password</password> </server> <server> <id>snapshots</id> <!-- 如果需要上传 SNAPSHOT 版本 --> <username>your-username</username> <password>your-password</password> </server> </servers> </settings> ``` 上述配置中的 `<id>` 值需与后续使用的 POM 文件中 `<distributionManagement>` 下的 `<repository>` 和/或 `<snapshotRepository>` 定义一致[^1]。 #### 2. 创建对应的 POM 文件 准备一个描述目标 JAR 包元数据的 POM 文件。以下是示例内容: ```xml <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>com.example</groupId> <artifactId>my-sm-basic</artifactId> <version>1.3.1</version> <packaging>jar</packaging> <distributionManagement> <repository> <id>releases</id> <url>http://your-nexus-server/repository/releases/</url> </repository> <snapshotRepository> <id>snapshots</id> <url>http://your-nexus-server/repository/snapshots/</url> </snapshotRepository> </distributionManagement> </project> ``` 这里的 `<distributionManagement>` 是关键部分,它指定了上传的目标仓库 URL 和 ID[^2]。 #### 3. 使用 `-s` 参数指定自定义设置文件 执行 Maven 命令时,可以通过 `-s` 参数显式指定自定义的 `settings.xml` 文件路径。例如: ```bash mvn deploy:deploy-file \ -Dfile=my-sm-basic-1.3.1.jar \ -DpomFile=pom.xml \ -DrepositoryId=releases \ -Durl=http://your-nexus-server/repository/releases/ \ -s /path/to/custom-settings.xml ``` 其中: - `-Dfile`: 指定待上传的 JAR 文件路径。 - `-DpomFile`: 指向之前创建的 POM 文件- `-DrepositoryId`: 应匹配 `settings.xml` 中 `<servers><server><id></id>` 的值。 - `-Durl`: 目标仓库的具体地址。 - `-s`: 显式指定自定义的 `settings.xml` 文件位置[^3]。 #### 4. 强制更新本地缓存(如果必要) 如果在 IDEA 或其他 IDE 终端发现无法识别远程仓库上的新 JAR 包,则可通过如下命令强制刷新本地缓存并重新下载依赖项: ```bash mvn clean compile -U ``` 参数 `-U` 表示强制从远程仓库拉取最新版本的依赖项[^4]。 --- ### 注意事项 - 确认所用的 `settings.xml` 文件确实被当前环境加载。可运行 `mvn -v` 查看实际生效的 Maven 设置路径,并验证其是否指向预期的自定义文件- 若存在多版本 Maven 安装情况,请确保调用了正确的 Maven 实例及其关联的 `settings.xml` 文件---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值