2016-05-13 12 views
1

tl; dr:configure Proxy für gradle-VFS-Plugin

Wie konfiguriere ich das HTTPS-Proxy durch die gradle-VFS-Plugin verwendet werden? Es scheint die normale Java/Gradle-Proxy-Konfiguration zu ignorieren.

Gesamte Details

Basierend auf diesen gradle file Ich versuche gradle zu verwenden, um reveal.js Dias von asciidocs zu erstellen.

Ich habe die Proxy-Einstellungen mit einer gradle.properties Datei mit Inhalt ähnlich wie diese konfiguriert:

systemProp.http.proxyHost=myproxy 
systemProp.http.proxyPort=8080 
systemProp.http.nonProxyHosts=localhost 
systemProp.https.proxyHost=myproxy 
systemProp.https.proxyPort=8080 
systemProp.https.nonProxyHosts=localhost 

Während diese Konfiguration funktioniert für gradle, bei der Durchführung von Java erstellt (es Downloads Plugin und Abhängigkeiten), VFS welche in der Referenz Build-Datei wird nicht verwendet:

:

:download FAILED 

FAILURE: Build failed with an exception. 

* Where: 
Build file 'D:\workspaces\myproject\build.gradle' line: 47 

* What went wrong: 
Execution failed for task ':download'. 
> Could not connect to HTTP server on "github.com". 

Linie 47 der erste Anfang mit cp in diesem Block ist

Antwort

1

Eine (meine) Lösung besteht darin, VFS-Optionen hinzuzufügen, die die Proxy-Parameter definieren. Dies könnte z.B. durch eine Aufgabe Aufbau der Parameter aus der Systemumgebung abzuleiten, aber diese funktioniert:

task download << { mkdir downloadDir vfs { options 'vfs.http.proxyHost' : 'mylocalsquid.lokal' options 'vfs.http.proxyPort' : '3128' options 'vfs.https.proxyHost' : 'mylocalsquid.lokal' options 'vfs.https.proxyPort' : '3128' cp "zip:https://github.com/asciidoctor/asciidoctor-reveal.js/archive/${asciidoctorBackendVersion}.zip!asciidoctor-reveal.js-${asciidoctorBackendVersion}", templateDir, recursive:true, overwrite:true cp "zip:https://github.com/hakimel/reveal.js/archive/${revealjsVersion}.zip!reveal.js-${revealjsVersion}", revealjsDir, recursive:true, overwrite:true } }

Diese aus der Dokumentation bei http://ysb33r.github.io/groovy-vfs/1.0/docs/product-documentation.html

+1

abgeleitet wurde, um die Eigenschaften in gradle.properties auf definierten verwenden können ersetzen die String-Literale mit project.property ("systemProp.http.proxyPort"), wobei die Zeichenfolge der Name der Eigenschaft ist. –