2012-04-04 13 views
8

Sto provando ad arrivare al plug-in Artifactory Gradle che funziona per pubblicare sulla mia istanza Artifactory locale.L'URL del contesto non può essere vuoto - Artifactory Gradle Plugin

Ho l'ultima versione (installazione predefinita) in esecuzione su localhost: 8081/artifactory. Posso verificarlo con l'accesso tramite un browser web.

Tuttavia, con il mio esempio minimo indispensabile .. sto ottenendo un "URL contesto non può essere trovato errore

Nota che ho specificato tutte le impostazioni obbligatorie configurazioni Artifactory richiesto - (come indicato sul Artifactory Gradle pagina web) .. tra cui l'URL di contesto.

buildscript { 
    repositories{ maven { url 'http://repo.jfrog.org/artifactory/gradle-plugins' } } 
    dependencies{ classpath 'org.jfrog.buildinfo:build-info-extractor-gradle:2.0.12'} 
} 

apply plugin: 'artifactory' 

artifactory { 
    contextUrl = 'http://localhost:8081/artifactory' //The base Artifactory URL if not overridden by the publisher/resolver 
    publish { 
    repository { 
     repoKey = 'integration-libs' //The Artifactory repository key to publish to 
     username = 'admin'   //The publisher user name 
     password = 'password' 
    } 
    } 
    resolve { 
    repository { 
     repoKey = 'libs-releases' //The Artifactory (preferably virtual) repository key to resolve from 
    } 
    } 
} 
+0

Quale versione di Gradle usi? – noamt

+0

Inoltre, nel caso in cui questo potrebbe essere un bug, puoi provare a specificare l'URL di contesto sia nella sezione pubblica che in quella di risoluzione? – noamt

+0

Ultima versione di Gradle (milestone 9) .. insieme al plugin artifactory corrispondente. – vicsz

risposta

5

Questo appare come uno strano bug e non sono sicuro che cosa provoca. ho capito in alcuni dei miei Gradle costruire file, ma altri sembrano funzionare bene. L'ho risolto definendo nuovamente contextUrl all'interno del pu blish element, quindi il tuo script sarà ora:

artifactory { 
    contextUrl = 'http://localhost:8081/artifactory' //The base Artifactory URL if not overridden by the publisher/resolver 
    publish { 
    contextUrl = 'http://localhost:8081/artifactory' // <- this is the fix 
    repository { 
     repoKey = 'integration-libs' //The Artifactory repository key to publish to 
     username = 'admin'   //The publisher user name 
     password = 'password' 
    } 
    } 
    resolve { 
    repository { 
     repoKey = 'libs-releases' //The Artifactory (preferably virtual) repository key to resolve from 
    } 
    } 
} 

Potrebbe anche essere necessario definirlo di nuovo all'interno dell'elemento di risoluzione.

+0

Ok ho capito che questo succede se il progetto genitore contiene una configurazione artificiale e si prova a definire una nuova configurazione artifactory nei progetti figlio. – Umi

+0

Sembra che si verifichi anche quando si incolla la build artifactory in una build secondaria e non c'è alcuna configurazione artifactory nel genitore. Sembra che si possa usare solo artefatto per tutte le build o nessuna. – Gus

Problemi correlati