2012-12-03 2 views

risposta

16

probabilmente si desidera utilizzare il classpath runtime del Source sets che comprende il compiled classes of your project as well as all the runtime dependencies.

task runJava(type: JavaExec, dependsOn:[classes]) { 
    main = 'mypackage.MyClass' 
    classpath = sourceSets.main.runtimeClasspath 
} 

Nel caso in cui si desidera il ottenere il percorso di una specifica configurazione si può fare qualcosa di simile: configurations.getByName('runtime').asPath o più corto configurations.runtime.asPath.

+2

ricordando che chiamare 'asPath' risolverà la configurazione, quindi potrebbe essere necessario fare attenzione a non terminare la configurazione involontariamente durante la fase di configurazione – Matt

+2

Quando si usa gradle in Android Studio non c'è sourceSets.main - Qualcuno ha un'idea di cosa si dovrebbe usare in caso di versione Gradle di Android Studio? L'unica cosa che ho trovato finora è android.sourceSets.main ma non ha runtimeClasspath e non sono nemmeno sicuro che sia la cosa giusta. – AgentKnopf

+0

Errore: (38, 1) Si è verificato un problema durante la valutazione del progetto root "MyProject". > Impossibile ottenere la proprietà sconosciuta 'sourceSets' per l'attività ': runApp' di tipo org.gradle.api.tasks.JavaExec. – Zon