将gradle 缓存的jar包目录,转换成maven使用的jar包目录
来源:互联网 发布:星星知多少视频 编辑:程序博客网 时间:2024/05/16 00:46
由于公司的网络安全限制,无法直接通过软件访问公网的maven 仓库中心,所以最近在弄本地搭建maven私有仓库。
maven私库的搭建
使用Nexus 2.17搭建,傻瓜式的,直接启动脚本,就可以了,网上例子很多,这里不赘述。有一句话我一直没有看懂,就是使用maven代理的时候,会缓存通过私有仓库下载的jar包等文件,我的一直没有弄成功,所以如果有知道的请回复一下,多谢。
jar包上私有仓库的结果方案
将完整的 maven缓存目录中的结构拷贝到目录:
nexus-2.14.1-01-bundle\sonatype-work\nexus\storage\thirdparty
就可以了
将gradle缓存目录中的结构拷贝到上述目录
遇到了一个问题,既然无法访问公共网络,那么,只能在外网下载好jar包,然后,发送会内网,然后放到搭建好的maven仓库中,让开发人员使用。 对于Android 开发,使用gradle进行构建,背后还是使用maven的方式来管理和使用jar包,但是,查看gradle的jar包缓存目录~/.gradle,可以发现,目录结构与maven并不完全一致,让人头疼,不能直接拿来使用。
gradle 目录结构如下所示
\.gradle\caches\modules-2\files-2.1\org.hamcrest\hamcrest-core\1.3\1dc37250fbc78e23a65a67fbbaf71d2e9cbc3c0b\hamcrest-core-1.3-sources.jar
maven 目录结构如下所示:
org\hamcrest\hamcrest-core\1.3\hamcrest-core-1.3-sources.jar
可以看出,gradle的目录中,一些目录是直接带”.”的,同时还有一串随机字符串组合。经过分析,使用python写了一个脚本
https://github.com/longyc2011/ChangeGradleDirToMavenDir
使用方法很简单,将脚本拷贝到
\.gradle\caches\modules-2\files-2.1
目录,然后在cmd中,切换到该目录下,执行脚本
>python FileOpration.py
最后在当前目录下生成一个out目录,这个目录下就是转换好的maven目录。我们就可以将out目录下的结构直接拷贝到nexus的storage目录下,如以上所示。
这个目前只是我自己的一种实现方式,应该有更简单的方式,如果哪位大神无意间看到了我的解决方案,如果他有跟好的方案,请分享一下,多谢
0 0
- 将gradle 缓存的jar包目录,转换成maven使用的jar包目录
- 使用gradle打包包含assets目录的jar包
- Android studio使用gradle将assets目录so库打进jar包以及jar包拆分
- 使用Maven为一个项目生成多个Jar包,将一个目录打成jar包
- maven更改jar包目录
- MAVEN将所有依赖打进一个jar包并复制到指定目录的简单示例
- maven学习系列8----将resources目录下的文件打包到jar包外
- maven打包,实现将jar包中的路径,打到对应的目录下
- maven 将依赖的外部jar包 统一打到指定目录文件夹中取
- 使用jar把目录生成jar包
- 使用eclipse在Maven本地仓中自动安装依赖jar包的目录结构
- 获取jar包同目录的配置文件
- 设置jar包的lib目录
- Velocity-1.7.jar的包目录结构
- 使用gradle编译Volley的jar包
- maven copy jar包到lib目录
- maven copy jar包到lib目录
- maven copy jar包到lib目录
- 第十五周 OJ总结<8>--将两个字符串连接
- 量化分析:把Tushare数据源,规整成PyalgoTrade所需格式
- java for BAT
- 报错: java.lang.ClassNotFoundException: org.hibernate.engine.transaction.spi.TransactionContext
- Java包装类,拆箱和装箱详解
- 将gradle 缓存的jar包目录,转换成maven使用的jar包目录
- java基础知识
- (一)单例模式详解
- 回测框架pybacktest简介(一)
- Mini2440交叉编译工具在Ubuntu16.04上的安装
- 关于winForm窗体最大化的设置(转)
- WUP 页面跳转过度动画
- Android设计模式之动态代理,实现方法拦截功能
- Mysql-聚簇索排序慢案例分析