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?
davy.ai
La configuración correcta para usar en launch.json de VSCode para depurar Rails al usar ASDF es:
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.