是否可以从VisualStudio代码调试go revel框架?

是否可以从VisualStudio代码调试go revel框架?,go,visual-studio-code,revel,Go,Visual Studio Code,Revel,我正在尝试用visual studio调试revel应用程序,但无法使其正常工作 我见过这个问题,但还没有答案 我已尝试使用此配置: { “版本”:“0.2.0”, “配置”:[ { “名称”:“发射”, “类型”:“开始”, “请求”:“启动”, “模式”:“调试”, “远程路径”:“, “港口”:2345, “主机”:“127.0.0.1”, “程序”:“~/code/go/bin/revel”, “环境”:{}, “args”:[], “showLog”:正确 } ] }是的,这是可能的

我正在尝试用visual studio调试revel应用程序,但无法使其正常工作

我见过这个问题,但还没有答案

我已尝试使用此配置:

{
“版本”:“0.2.0”,
“配置”:[
{
“名称”:“发射”,
“类型”:“开始”,
“请求”:“启动”,
“模式”:“调试”,
“远程路径”:“,
“港口”:2345,
“主机”:“127.0.0.1”,
“程序”:“~/code/go/bin/revel”,
“环境”:{},
“args”:[],
“showLog”:正确
}
]
}
是的,这是可能的

  • 假设
    GOPATH
    C:\Work\golang
  • Revel项目名称为
    myapp
    ,因此项目(工作区)的位置将为
    C:\Work\golang\src\myapp
  • 对控制器等进行一些更改
  • 使用
    revel Run myapp
    运行应用程序,然后按
    CTRL+C
    退出。此步骤是生成相应go文件所必需的。生成的文件,即
    main
    包将在
    ${workspaceRoot}/app/tmp/main.go
  • 按如下方式配置
    launch.json

    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Launch",
                "type": "go",
                "request": "launch",
                "mode": "debug",
                "remotePath": "",
                "port": 2345,
                "host": "127.0.0.1",
                "env": {},
                "showLog": true,
                "program": "${workspaceRoot}/app/tmp/",
                "args": ["-importPath", "myapp", "-srcPath", "c:\\work\\golang\\src",  "-runMode", "dev"]
            }
        ]
    }
    
  • 重要的部分是
    program
    args
    参数,而其他参数未经修改

  • 设置
    断点
    并启动
    delve
    调试器

  • 编辑:
  • args
    参数设置为
    [“-importPath”、“myapp”、“-srcPath”、“${workspaceRoot}/。”、“-runMode”、“dev”]
    也可以,我认为这在其他平台(Mac、Linux)也应该可以
  • 错误消息与
    delve
    问题相关。看

  • 您需要传递的任何参数进入
    args
    ,是。有,嗨,扎皮科。。。也许您需要再次指向
    程序的路径才能转到/bin/revel.d/your-app-folder/the-executableHi。。。我正在考虑编辑。。。revel是一个框架,当您再次运行可执行文件时,如果您更改了代码中的某些内容(不是在deps上),它会自动重新加载可执行文件。。。但在这种情况下,我不知道它是如何工作的。试着告诉我们。谢谢你的帮助!!!我的devenv是mac,所以它并不完全相同,但它似乎“几乎在那里”。现在我遇到了这样一个错误:
    无法启动进程:拨打tcp:64821:getsockopt:connection拒绝进程退出,代码为:1
    这似乎与我的delve安装有关,我稍后会检查它。这个答案应该在Revel doc!!!;)谢谢你的帮助@putu,我现在面临着不同的问题
    [“-importPath”,“myapp”,“-srcPath”,“${workspaceRoot}/。”,“-runMode”,“dev”]
    如果我从args中删除“-runMode”和“dev”,它会运行,但似乎无法正确加载某些文件(但它正在调试,非常感谢),我想我在revel中的环境有问题……您好,我能够在浮动窗口中显示变量值,例如()这样的简单示例,但对于revel应用程序,我不能调试revel应用程序,但不能检查变量。有什么建议吗?