• Android Stadio调试gradle 插件 || Android Stadio 远程调试 || Anroid APT调试


    有时候,自己开发了gralde插件,想调试一下。毕竟打印log 成本太高。效率太低。怎么做呢?

    第一种方法:
    1。执行gradlew 命令的时候,加上几个参数:-Dorg.gradle.debug=true --no-daemon
    比如:gradlew clean -Dorg.gradle.debug=true --no-daemon

    这样就会出现下面这种情况:
    这里写图片描述

    他会等着你去调试。

    然后
    这里写图片描述
    然后点击+号,新建一个remote,之后直接点击ok 就可以了。:
    这里写图片描述
    这里写图片描述

    最后调试进程
    这里写图片描述

    就发现程序开始执行,然后你打的断点就可以调试了。

    第二种:在系统环境变量里面添加:
    GRADLE_OPTS
    值为:
    -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005

    然后你会发现,每次运行所有的gradle 都会执行调试,所以这种方法我不推荐。如果你设置了没生效,那么请重启的inteji。因为配置的环境变量没有生效。你可以打印出来看下:
    这里写图片描述
    比如我这里gradle.bat 里面,打印这个系统变量。没重启之前是空的字符串,重启之后就有了值。
    -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005

    ok,学到了很多。gradlew.bat 文件我都改了。我都配置自己。加油,感谢下面的博客同志。

    参考博客:

    第三种:
    如果你是windows ,那么直接把这个gradlew.bat文件copy 过去就可以了。

    @if "%DEBUG%" == "" @echo off
    @rem ##########################################################################
    @rem
    @rem  Gradle startup script for Windows
    @rem
    @rem ##########################################################################
    
    @rem Set local scope for the variables with windows NT shell
    if "%OS%"=="Windows_NT" setlocal
    
    @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
    set DEFAULT_JVM_OPTS=
    
    set DIRNAME=%~dp0
    if "%DIRNAME%" == "" set DIRNAME=.
    set APP_BASE_NAME=%~n0
    set APP_HOME=%DIRNAME%
    
    @rem Find java.exe
    if defined JAVA_HOME goto findJavaFromJavaHome
    
    set JAVA_EXE=java.exe
    %JAVA_EXE% -version >NUL 2>&1
    if "%ERRORLEVEL%" == "0" goto init
    
    echo.
    echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
    echo.
    echo Please set the JAVA_HOME variable in your environment to match the
    echo location of your Java installation.
    
    goto fail
    
    :findJavaFromJavaHome
    set JAVA_HOME=%JAVA_HOME:"=%
    set JAVA_EXE=%JAVA_HOME%/bin/java.exe
    
    if exist "%JAVA_EXE%" goto init
    
    echo.
    echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
    echo.
    echo Please set the JAVA_HOME variable in your environment to match the
    echo location of your Java installation.
    
    goto fail
    
    :init
    @rem Get command-line arguments, handling Windowz variants
    
    if not "%OS%" == "Windows_NT" goto win9xME_args
    if "%@eval[2+2]" == "4" goto 4NT_args
    
    :win9xME_args
    @rem Slurp the command line arguments.
    set CMD_LINE_ARGS=
    set _SKIP=2
    
    :win9xME_args_slurp
    if "x%~1" == "x" goto execute
    
    set CMD_LINE_ARGS=%*
    goto execute
    
    :4NT_args
    @rem Get arguments from the 4NT Shell from JP Software
    set CMD_LINE_ARGS=%$
    
    :execute
    @rem Setup the command line
    
    set CLASSPATH=%APP_HOME%gradlewrappergradle-wrapper.jar
    
    @rem Execute Gradle
    ::"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
    "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% -Dorg.gradle.debug=true --no-daemon
    
    :end
    @rem End local scope for the variables with windows NT shell
    if "%ERRORLEVEL%"=="0" goto mainEnd
    
    :fail
    rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
    rem the _cmd.exe /c_ return code!
    if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
    exit /b 1
    
    :mainEnd
    if "%OS%"=="Windows_NT" endlocal
    
    :omega
    
  • 相关阅读:
    【复习+知识补充】EL表达式:只能调用静态方法
    【复习】sql语句的拼接 + 链接地址的简写
    淘淘商城maven工程的创建和svn的上传实现
    淘淘商城基于maven和svn的理解
    国家电力项目SSH搭建
    linux中权限的修改
    chown -R命令的使用
    修改nginx的访问目录以及遇到的403错误修改总结
    nginx的在linux系统中的安装
    集群环境的图片的访问和存储
  • 原文地址:https://www.cnblogs.com/caoxinyu/p/10568540.html
Copyright © 2020-2023  润新知