带GO的Visual Studio代码 - 多个主要声明(启动设置)

时间:2017-08-30 12:56:59

标签: go visual-studio-code vscode-settings

我是VS代码和Golang的新手 我有一个包含2个不同服务的现有项目 - 让我们称之为A,第二个称为B.
A和B都位于同一目录下。

每当我尝试运行A或B时,都会出现以下错误:

# directory/directory/directory/A&B_Directory
./A.go:12:6: main redeclared in this block
    previous declaration at ./B.go:18:6

我尝试使用launch.json文件,添加以下部分:

   {
        "name": "Launch Program",
        "type": "go",
        "request": "launch",
        "mode": "debug",
        "program": "FullDirectory/A.go"
    }

还尝试在program属性中设置为${file}以及其他许多失败的变体。

我喜欢某个方向,我有点失落。 感谢。

1 个答案:

答案 0 :(得分:5)

免责声明这不是推荐的方法,我同意其他人的意见,您应将服务 A和B分开进入不同的目录。

回答您的问题:要启动特定文件,请使用以下配置模拟go run current-file

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Run current file",
            "type": "go",
            "request": "launch",
            "mode": "exec",
            "program": "full-path-to-go.exe",
            "args": ["run", "${file}"],
            "showLog": true
        }
    ]
}

模式exec用于启动属性program中给出的预构建二进制文件(您必须指定go二进制文件的完整路径)。然后作为参数,只需将run和文件名(${file})添加到属性args