有的nexus版本不支持在管理平台的页面上,直接上传jar包,
下面分享一下,怎么通过命令行手动上传jar包到maven仓库:
目前方法3最有效
1:直接上传到Maven:
mvn install:install-file -Dfile=fszrDBC-0.0.1-SNAPSHOT.jar -DgroupId=com.fszr.main -DartifactId=fszrDBC -Dversion=0.0.1 -Dpackaging=jar
mvn install:install-file -Dfile=cpcn-payment-api-2.4.0.6.jar -DgroupId=com.fszr.main -DartifactId=cpcn-payment-api -Dversion=2.4.0.6 -Dpackaging=jar
这只是放到maven仓库中,不是放到nexus中,不能通过nexus下载
2:上传到Nexus的maven仓库
将jar包放到pom.xml同级目录后,将pom.xml改成自己的jar包的pom.xml,执行:mvn deploy
pom文件内容:
<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.fadada.sdk</groupId>
<artifactId>fadada_api_sdk</artifactId>
<version>2.4.0</version>
<packaging>jar</packaging>
<name>fadada_api_sdk</name>
<description>fadada_api_sdk_20190923</description>
<distributionManagement>
<repository>
<id>nexus</id>
<name>four_party</name>
<url>http://192.168.20.129:8081/repository/four_party/</url>
</repository>
</distributionManagement>
<!-- 执行mvn deploy即可上传成功! -->
</project>
3:有可能用2上传还不行,还有方法3
在Nexus的home目录上新建一个目录:repo
压缩要上传的jar,必须要选择repository目录下的文件夹压缩
比如要上传com下面的一个jar包,但是不需要com下面其他的那么多文件,可以在自己做一个com文件夹,直到jar的最后的目录
像com\api\jxtlt-sdk\1.0这几层都可以自己创建,最后把jar和pom放进去
或者直接复制上面.m2中repository中的
上传到Nexus机器的/home/repo中,然后解压,解压后:
执行命令:vi mavenimport.sh
将下面内容粘贴进去:
#!/bin/bash
# copy and run this script to the root of the repository directory containing files
# this script attempts to exclude uploading itself explicitly so the script name is important
# Get command line params
while getopts ":r:u:p:" opt; do
case $opt in
r) REPO_URL="$OPTARG"
;;
u) USERNAME="$OPTARG"
;;
p) PASSWORD="$OPTARG"
;;
esac
done
find . -type f -not -path './mavenimport\.sh*' -not -path '*/\.*' -not -path '*/\^archetype\-catalog\.xml*' -not -path '*/\^maven\-metadata\-local*\.xml' -not -path '*/\^maven\-metadata\-deployment*\.xml' | sed "s|^\./||" | xargs -I '{}' curl -u "$USERNAME:$PASSWORD" -X PUT -v -T {} ${REPO_URL}/{} ;
保存后退出,执行赋予权限命令:chmod +x mavenimport.sh
执行上传命令即可:./mavenimport.sh -u admin -p admin123 -r http://192.168.20.129:8081/repository/four_party/