2016-12-08 15 views
0

我正在嘗試用Gradle構建限制訪問互聯網的應用程序。如何在本地緩存和使用gradle插件?

我是能夠成功地使用正常的罐子

repositories { 
    mavenLocal() 
... 

和填充~\.m2\repository與相應的文件。

但我也有一個像

plugins { 
    id 'org.hidetake.ssh' version '2.4.0' 
} 
build.gradle

語句。構建時,出現以下錯誤

Error resolving plugin [id: 'org.hidetake.ssh', version: '2.4.0'] 
> Could not GET 'https://plugins.gradle.org/api/gradle/2.9/plugin/use/org.hidetake.ssh/2.4.0'. 
    > Connection to https://plugins.gradle.org refused 

顯然,Gradle試圖從Internet獲取插件,這是禁止的。

如何緩存此插件?

在我的另一臺機器,它具有完整的互聯網接入,我發現目錄,如

.gradle\caches

但它有一些奇怪的哈希子目錄,這我不知道怎麼用。從另一臺機器複製modules-2目錄沒有幫助。

回答

0

我想,用新的插件DSL是不可能的,因爲在這種情況下,插件是由它的全局唯一ID和版本指定的,它們並不存儲在緩存中。

你可以使用一些本地插件存儲庫與所需的附加插件標記工件,閱讀它here

或者只是不要使用插件dsl並用apply plugin: 'plugin_name'以舊的方式聲明您的依賴關係,並以相同的方式在您的本地存儲庫中存儲所需的jar,這與您的項目依賴關係完成。

相關問題