Depuração do Visual Studio Code
O Blockchain App Builder inclui suporte de depuração linha por linha do Visual Studio Code para projetos TypeScript e Go.
No Microsoft Windows, configure o Visual Studio Code para usar o Prompt de Comando como o terminal padrão em vez de PowerShell. No menu do terminal do Visual Studio Code, clique em Selecionar Perfil Padrão e selecione Prompt de Comando.
Para poder depurar o seu projeto de código de cadeia Go, você deve instalar as ferramentas Go necessárias no Visual Studio Code. No Visual Studio Code, abra a Paleta de Comandos e execute o comando Go: Install/Update Tools
. Instale todas as extensões do Go listadas.
O Visual Studio Code usa Delve para depurar Go. Ao depurar um chaincode Go pela primeira vez, você será solicitado a instalar o Delve. Aceite a instalação Delve antes de continuar. O Visual Studio Code inclui um depurador integrado para TypeScript.
- Abra seu projeto de chaincode no Visual Studio Code Explorer. No painel Chaincodes, clique com o botão direito do mouse em seu chaincode e selecione Abrir no Explorer.
- Anexe pontos de interrupção ao seu código sempre que necessário.
- Vá para o menu Executar e clique em Iniciar Depuração. Isso anexa o depurador. Pode levar alguns segundos para que o depurador seja anexado ao chaincode.
- Chame qualquer comando do Terminal que execute seu código.
Se você estiver usando a interface do Visual Studio Code para testar seu chaincode até o momento, poderá seguir a sintaxe de chamada descrita em Testar seu Chaincode em uma Rede Local Hyperledger Fabric.
O depurador parará em seus pontos de interrupção. Em seguida, você pode iniciar a depuração.
- Reinicie a depuração para refletir novas alterações.
Como o chaincode está sendo executado no modo de depuração, a implantação a quente de novas alterações não acontece automaticamente. Você deve reiniciar manualmente o processo de depuração, usando os controles de depuração no Visual Studio Code, para que as alterações mais recentes tenham efeito.
Solução de Problemas
dlv: failed to install dlv(github.com/go-delve/delve/cmd/dlv@latest): Error: Command failed:
C:\Program Files (x86)\Go\bin\go.exe get -x github.com/go-delve/delve/cmd/dlv@latest
# get https://proxy.golang.org/github.com/go-delve/delve/cmd/dlv/@v/list
# get https://proxy.golang.org/github.com/@v/list
# get https://proxy.golang.org/github.com/go-delve/@v/list
# get https://proxy.golang.org/github.com/go-delve/delve/cmd/@v/list
# get https://proxy.golang.org/github.com/go-delve/delve/@v/list
# get https://proxy.golang.org/github.com/@v/list: 410 Gone (0.420s)
# get https://proxy.golang.org/github.com/go-delve/delve/cmd/@v/list: 410 Gone (1.040s)
# get https://proxy.golang.org/github.com/go-delve/@v/list: 410 Gone (1.062s)
# get https://proxy.golang.org/github.com/go-delve/delve/cmd/dlv/@v/list: 410 Gone (1.066s)
# get https://proxy.golang.org/github.com/go-delve/delve/@v/list: 200 OK (1.448s)
go: found github.com/go-delve/delve/cmd/dlv in github.com/go-delve/delve v1.8.3C:\Users\<UserName>\go\pkg\mod\github.com\go-delve\delve@v1.8.3\service\debugger\debugger.go:28:2:found packages native (proc.go) and
your_operating_system_and_architecture_combination_is_not_supported_by_delve(support_sentinel.go) in C:\Users\Asus\go\pkg\mod\github.com\go-delve\delve@v1.8.3\pkg\proc\native
Não há solução alternativa para este erro no momento.