Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Depurar un proyecto Java basado en gradle en Android Studio?

Mi proyecto actual se compone de dos módulos, uno androide y otro que se puede utilizar como java de escritorio independiente. Me gustaría ejecutar este segundo módulo por sí mismo y ser capaz de depurar sin pasar por un dispositivo. No quiero tener una instalación de IntelliJ secundaria para intercambiar entre uno o el otro.

¿Hay alguna forma en AS para adjuntar el depurador a una tarea java gradle?

apply plugin: "java" sourceCompatibility = 1.6 sourceSets.main.java.srcDirs = [ "src/" ] project.ext.mainClassName = "com.project.Desktop.Launcher" project.ext.assetsDir = new File("../android/assets"); task run(dependsOn: classes, type: JavaExec) { main = project.mainClassName classpath = sourceSets.main.runtimeClasspath standardInput = System.in workingDir = project.assetsDir ignoreExitValue = true } task dist(type: Jar) { from files(sourceSets.main.output.classesDir) from files(sourceSets.main.output.resourcesDir) from {configurations.compile.collect {zipTree(it)}} from files(project.assetsDir); manifest { attributes 'Main-Class': project.mainClassName } } dist.dependsOn classes eclipse { project { name = appName + "-desktop" linkedResource name: 'assets', type: '2', location: 'PARENT-1-PROJECT_LOC/android/assets' } } task afterEclipseImport(description: "Post processing after project generation", group: "IDE") { doLast { def classpath = new XmlParser().parse(file(".classpath")) new Node(classpath, "classpathentry", [ kind: 'src', path: 'assets' ]); def writer = new FileWriter(file(".classpath")) def printer = new XmlNodePrinter(new PrintWriter(writer)) printer.setPreserveWhitespace(true) printer.print(classpath) } } 

  • Cómo obtener un error en Android Studio 2.1 con java 8
  • ¿Cómo cambiar el retraso del hilo de sueño / temporizador en android durante el tiempo de ejecución?
  • ¿Qué significa 'ICU' en Android SDK?
  • Adición de cotizaciones en Java
  • Esta versión de la biblioteca de renderizado es más reciente que su versión de Android Studio. Actualiza Android Studio
  • IllegalArgumentException: Receptor no registrado: com.google.android.gms.common.api
  • Cómo agregar cabeceras a interceptor de solicitud OkHttp?
  • Mejora del análisis de Java / Kotlin JSON
  • One Solution collect form web for “¿Depurar un proyecto Java basado en gradle en Android Studio?”

    http://www.gradle.org/docs/current/userguide/application_plugin.html

    A continuación, puede ejecutar la aplicación ejecutando gradle run. Gradle se encargará de construir las clases de aplicación, junto con sus dependencias de tiempo de ejecución, e iniciar la aplicación con el classpath correcto. Puede iniciar la aplicación en modo de depuración con gradle run –debug-jvm (consulte JavaExec.setDebug ()).

    Añadir a su build.gradle

     apply plugin:'application' mainClassName = 'my.company.namespace.MainClass' 

    Crear una nueva configuración de Run / Debug Gradle

    1. correr
    2. Editar configuraciones
    3. "+" (Añadir)
    4. Gradle

    O alternativamente puede hacer una sola [ejecución] y duplicar la tarea.

    1. Para la tarea use run --debug-jvm
    2. Cambiar el nombre a [depurar]

    Y desde allí adjuntar el depurador siguiendo las indicaciones de IntelliJ:

    1. correr
    2. Editar configuraciones
    3. "+" (Añadir)
    4. Remoto
    5. Cambiar el nombre a "Adjuntar depurador"
    6. (Opcional) En Antes del inicio, agregue otra configuración y agregue [depurar]

    Ahora puede lanzar el [depuración] seguido de Attach Debugger, o si siguió el paso 6 simplemente presione el botón de detener el depurador una vez para pasar el Listening for transport dt_socket at address: 5005 message que puede ser considerado como punto de entrada.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.