Sto provando a eseguire il port delle build del client Codename One che sono script di antas molto personalizzati per funzionare con gradle. Quando si esegue un Codename Un'app sul simulatore non si esegue le applicazioni di classe principale, ma piuttosto qualcosa di simile:Obiettivo debug per gradle equivalente al blocco run {} per passare argomenti
java -classpath CodenameOneJarList com.codename1.impl.javase.Simulator nameOfTheMainClassForTheApp
Per fare questo in Gradle ho modificato lo script di build di base come ad esempio:
apply plugin: 'java'
apply plugin: 'application'
mainClassName = "com.codename1.impl.javase.Simulator"
// for netbeans
ext.mainClass = 'com.codename1.impl.javase.Simulator'
Poi in fondo ho fatto questo:
run {
args 'com.mycompany.myapp.Main'
}
questo ha funzionato come previsto e ha lanciato il simulatore quando si preme corsa nel IDE NetBeans(). Non sono sicuro che questa sia la "cosa giusta" da fare e se funzionerà in altri IDE.
Poi, quando ho provato a lanciare nel debugger gli argomenti non sono stati passati visto che immagino che il target run
non sia stato richiamato?
Ho provato a fare questo:
debug {
args 'com.mycompany.myapp.Main'
}
Il che, ovviamente, non è riuscita. Non sono esattamente sicuro di dove passare argomenti al debugger?
È standardizzato da gradle?
Sono nella giusta direzione per quanto riguarda il passaggio di argomenti?
A cosa serve la mappa sintattica dichiarativa "run"? Come trovo gli altri potenziali tipi di blocchi dichiarativi?
Sfortunatamente googling per le basi come eseguire/debug non risulta in qualcosa di utile.
Grazie. Quindi c'è un plugin che mi permetterà di farlo? Definire un obiettivo per il debug e in generale tutte le attività di cui ha bisogno l'IDE o devo fare qualcosa di specifico per-IDE per farlo funzionare? Se quest'ultimo da dove comincio a cercare hack come questo? –
FYI Ovviamente ho installato il plugin gradle netbeans ;-) –
Come si esegue il debug di una classe specifica in un semplice progetto java (non gradle) in netbeans? – RaGe