Put Grape's proxy properties on the Groovy launch:

groovy -Dhttp.proxyHost=proxy.example.net -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.example.net -Dhttps.proxyPort=8080 app.groovy

The values are hostnames and numeric ports, not proxy URLs. An HTTP candidate from the HTTP proxy list supplies those two values for a public repository route. The same HTTP intermediary can carry both HTTP and HTTPS destination downloads.

Timing is the reason for setting them here. Grab annotations can resolve dependencies during compilation, before ordinary script statements execute. A later System.setProperty call cannot configure a download that already failed.

Use the failed repository URL to decide which destination scheme needs a route. With GrapeIvy, groovy.grape.report.downloads=true reports download activity; GrapeMaven uses its own debugging option. A missing artifact version or unavailable repository remains a repository problem even with the proxy correctly selected.

Artiglyn mynjee