es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Depurando Rails bajo ASDF en VSCode

Estoy intentando establecer un punto de interrupción en una aplicación de Rails desde VSCode en un Mac. Estoy utilizando ASDF para instalar Ruby, etc.

La configuración de inicio predeterminada en VSCode para Rails se ve así:

{
“name”: “Servidor de Rails”,
“type”: “Ruby”,
“request”: “launch”,
“program”: “${workspaceRoot}/bin/rails”,
“args”: [
“server”
]
}

Esto falla porque mi which rails es Users/timregan/.asdf/shims/rails. Pero si reemplazo "program": "${workspaceRoot}/bin/rails" en el archivo launch.json con "program": "/Users/timregan/.asdf/shims/rails", obtengo este mensaje de error cuando intento iniciar una sesión de depuración:

    Excepción no capturada: /Users/timregan/.asdf/shims/rails:3: opciones de expresión regular desconocidas - hbrw
    exec /opt/homebrew/opt/asdf/libexec/bin/asdf ex...
            ^~~~~~~~~
    /Users/timregan/.asdf/shims/rails:3: error de sintaxis, variable local o método inesperado, esperando `do' o `{' o `('
    .../opt/asdf/libexec/bin/asdf exec "rails" "$@"
    ...                           ^~~~

    /Users/timregan/.asdf/installs/ruby/3.0.3/bin/rdebug-ide:25:in `load'
    /Users/timregan/.asdf/installs/ruby/3.0.3/bin/rdebug-ide:25:in `
'

¿Cuál es la configuración correcta para usar en el archivo launch.json de VSCode para depurar Rails cuando se utiliza ASDF?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    La configuración correcta para usar en launch.json de VSCode para depurar Rails al usar ASDF es:

    {
        "name": "Servidor Rails",
        "type": "Ruby",
        "request": "launch",
        "program": "${env:HOME}/.asdf/shims/bundle",
        "args": [
            "exec",
            "rails",
            "server"
        ],
        "cwd": "${workspaceFolder}"
    }
    

    Esta configuración inicia el servidor Rails utilizando el comando bundle de ASDF y establece el directorio de trabajo en la raíz de la carpeta de espacios de trabajo. Al utilizar bundle exec, ASDF asegura que se utilice la versión correcta de Rails y sus dependencias.

Comments are closed.