从Gradle中的Url编译Jar [英] Compile Jar from Url in Gradle

查看:96
本文介绍了从Gradle中的Url编译Jar的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以做类似的事情:

Is it possible to do something like:

compile files('http://ho.st/jar/MyLibrary.jar')

在Gradle/Android Studio中?

in Gradle/Android Studio?

可能的优势:

  1. 始终获取最新版本(如果必须手动下载和复制,则不一定总是拥有最新版本)
  2. 即使未将库发布到Maven存储库中,它也可以正常工作

还是我每次都必须下载并复制它?

Or do I have to download and copy it every time?

推荐答案

这对我有用:

def urlFile = { url, name ->
    File file = new File("$buildDir/download/${name}.jar")
    file.parentFile.mkdirs()
    if (!file.exists()) {
        new URL(url).withInputStream { downloadStream ->
            file.withOutputStream { fileOut ->
                fileOut << downloadStream
            }
        }
    }
    files(file.absolutePath)
}
dependencies { //example
    compile urlFile('https://github.com/java-native-access/jna/blob/4.2.2/lib/native/android-arm.jar?raw=true', 'jna-android-arm')
}

它将在删除构建目录后下载一个新副本

It will download a fresh copy after deleting the build dir

这篇关于从Gradle中的Url编译Jar的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆