java - que - gradle tutorial español
No se puede ejecutar la tarea de depuración en NetBeans después de cambiar a Gradle (4)
He instalado el complemento de soporte de Gradle en Netbeans y puedo construir y ejecutar el proyecto sin problemas. Cuando intento ejecutar en modo de depuración, obtengo el siguiente resultado:
Executing: gradle debug
:debug
Cannot execute debug because the property "mainClass" is not defined or empty.
BUILD SUCCESSFUL
Total time: 0.222 secs
Estoy usando:
Oracle Java 1.8
Gradle 1.12
Netbeans 8.0
Gradle-Support 1.3.0
LinuxMint 16
¿Por qué no puedo ejecutar mi depurador?
Añadir algo como
if (!hasProperty(''mainClass'')) {
ext.mainClass = ''com.foo.acme.Main''
}
a su build.gradle
. Le indicará al complemento de Gradle qué clase usar al iniciar su aplicación. Quizás debería ser personalizable en la interfaz de usuario, pero no puedo verlo ahora.
Además de la respuesta de Radim, la forma de personalizar el parámetro mainClass
en la interfaz de usuario de Netbeans.
En las propiedades de un proyecto Netbeans gradle, vaya a "Tareas / depuración incorporadas", deseleccione "Heredar" y agregue "-PmainClass = aaa.bbb.ccc" a los argumentos.
Supongo que esto también debería hacerse para la tarea de ejecución.
Es la misma idea que ejecutar un archivo único de ejecución / depuración que ya toma el archivo seleccionado como parámetro mainClass.
Otra solución a este problema es crear una nueva tarea de depuración. Al igual que en la tarea de run
gradle, puedes agregar la siguiente tarea a tu archivo build.gradle
:
task debug(dependsOn: classes, type: JavaExec) {
main = project.mainClassName
classpath = sourceSets.main.runtimeClasspath
standardInput = System.in
workingDir = project.assetsDir
ignoreExitValue = true
debug = true
}
Tuve un problema similar y pude arreglarlo configurando Opciones / Misceláneo / Gradle / Ejecución de tareas / Tareas automáticas en "NetBeans no debería agregar tareas automáticamente".