安卓上传依赖到maven私有仓库

1.先运行gradlew命令编译通过,此时会下载依赖到本地仓库

/gradlew clean assemble

2.运行gradlew命令检查所有依赖,防止缺少pom文件导致后续上传失败

./gradlew --refresh-dependencies

3.把以下gradle命令加到任意build.gradlew里,然后运行cacheToLocalMavenRepository任务,会把依赖生成在项目根目录下,并且目录结构满足maven上传时的格式

tasks.register("cacheToLocalMavenRepository", Copy) {

duplicatesStrategy 'exclude'

from new File(gradle.gradleUserHomeDir, 'caches/modules-2/files-2.1')

into rootDir.absolutePath + '/repolocal5.7_DKJT_VPN'

eachFile {

List<String> parts = it.path.split('/')

print(parts.toString() + "\n")

it.path = parts0.replace('.', '/') + '/' + parts1 + '/' + parts2 + '/' + parts4

}

includeEmptyDirs false

}

4.使用以下shell脚本命令上传到maven仓库

./mvnupload.sh -u admin -p Passw0rd -r http://localhost:8081/repository/Android-Agent/

如脚本没有执行权限,执行命令chmod +x mvnupload.sh

5.mvnupload.sh脚本内容如下

bash 复制代码
#!/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}{} ;
相关推荐
万亿少女的梦1684 小时前
基于Spring Boot的游戏交易管理系统设计与实现
java·spring boot·mysql·系统设计·交易管理
闲猫4 小时前
Agent工程实践:从WorkFlow到多Agent协作的落地笔记
java·服务器·前端
笨蛋不要掉眼泪4 小时前
Java虚拟机:常用参数
java·开发语言·python
Mem0rin5 小时前
[MySQL] 聚合函数、分组查询、连接查询
android·mysql
亦暖筑序5 小时前
AgentScope-Java 入门:用 Middleware 审计 Agent 调用
java·ai编程·agentscope
码龙-DragonCoding5 小时前
一键批量提取音频、提取视频
android·音视频·提取
你驴我5 小时前
WhatsApp 消息撤回与编辑的幂等性设计实践
java·服务器·前端·后端·python
祉猷并茂,雯华若锦5 小时前
Win下完美解决Allure报错,生成Web自动化测试报告
android·python·selenium·自动化
青山木6 小时前
Hot 100 ---腐烂的橘子
java·数据结构·后端·算法·leetcode·广度优先
小龙报6 小时前
【优选算法】1. 水果成蓝 2.找到字符串中所有字母的异位词
java·c语言·数据结构·数据库·c++·redis·算法