jar 迁移 mvn 私有库

2023-02-26 14:59:07 浏览数 (1)

将 jar 从一个 mvn 库迁移另一个 mvn 库的办法

1. 拉取 jar 到本地 mvn 库

创建拉取项目文件夹,文件夹下创建 pom.xml,settings.xml 两个文件,填写要迁移的 jar 和 mvn 库地址,执行 mvn install -s settings.xml 拉取 jar 到本地 mvn 库。

pom.xml

代码语言:javascript复制
<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>net.coding</groupId>
    <artifactId>tracing</artifactId>
    <version>1.0</version>
    <dependencies>
        <!-- 需要填充:需要迁移的 jar -->
        <dependency>
            <groupId>net.coding.common</groupId>
            <artifactId>tracing</artifactId>
            <version>5.0.3.trace.pro</version>
        </dependency>
    </dependencies>
</project>

settings.xml

代码语言:javascript复制
<settings>
    <!-- omitted xml -->
    <profiles>
        <profile>
            <id>Repository Proxy</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <repositories>
                <repository>
                    <id>codingcorp-registry-maven-releases</id>
                    <name>maven-releases</name>
                    <!-- 需要填充:拉取 mvn 库的地址 -->
                    <url>https://oldmvn.com/repository/registry/maven-releases/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
        </profile>
    </profiles>
    <servers>
        <server>
            <id>codingcorp-registry-maven-releases</id>
            <!-- 需要填充:拉取需要的帐户密码 -->
            <username>lusson</username>
            <password></password>
        </server>
    </servers>
</settings>

2. 迁移到新的 mvn 库

创建迁移 mvn 库的 settings.xml 文件,包含 mvn 地址和账号密码,将上传 jar 从 ~/.m2/xx/xx 拖动到当前文件夹下,执行 deploy:deploy-file 上传。

代码语言:javascript复制
mvn deploy:deploy-file -DgroupId=net.coding.common  # jar 的 groupId
  -DartifactId=tracing  # jar 的 artifactId
  -Dversion=5.0.3.trace.pro.beta  # jar 的 version
  -Dpackaging=jar 
  -Dfile=tracing-5.0.3.trace.pro.jar  # jar 文件路径
  -DrepositoryId=devops-registry-maven-release  # setting 中的包含用户密码的远程库 id
  -Durl=https://xx.net/repository/registry/maven-release  # mvn 库地址
  -s settings.xml

settings.xml

代码语言:javascript复制
<settings>
    <!-- omitted xml -->
    <servers>
        <server>
            <!--仓库 ID-->
            <id>devops-registry-maven-release</id>
            <!-- 需要填充:上传 mvn 库的账户和密码 -->
            <username></username>
            <password></password>
        </server>
    </servers>
</settings>

3. github 地址

github:https://github.com/lusson-luo/mvndeploy

参考:

  1. https://maven.apache.org/guides/mini/guide-3rd-party-jars-remote.html
  2. http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html

0 人点赞