我想调试go代码。我想在导入包中的方法(属于命名类型)上设置断点。我浏览了许多在线资料,他们只在文件的行号上设置了断点(例如:<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href="https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet" />
<script src="https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
<div class="container fill">
<div id="myCarousel" class="carousel slide">
<div class="carousel-inner">
<div class="active item">
<div class="fill" style="background-image:url('//placehold.it/1024x700/449955/FFF');">
<div class="container">
</div>
</div>
</div>
<div class="item">
<div class="fill" style="background-image:url('//placehold.it/1024x700');">
<div class="container">
</div>
</div>
</div>
<div class="item">
<div class="fill" style="background-image:url('//placehold.it/1024x700/CC1111/FFF');">
<div class="container">
</div>
</div>
</div>
</div>
<div class="pull-center">
<a class="carousel-control left" href="#myCarousel" data-slide="prev">‹</a>
<a class="carousel-control right" href="#myCarousel" data-slide="next">›</a>
</div>
</div>
</div>
)。
我已经在'C'中进行了很多调试,在C中我在函数上设置了断点。可以进行这种调试吗?
我的主程序包中包含以下代码。
breakpoint a.go:15
。
我想给断点
1)函数clientContext := sdk.Context(fabsdk.WithUser("Admin"), fabsdk.WithOrg("ordererorg"))
,属于文件WithUser()
中的软件包fabsdk
。
2)方法github.com/hyperledger/fabric-sdk-go/pkg/fabsdk/context.go
属于程序包Context()
中文件FabricSDK
中的类型github.com/hyperledger/fabric-sdk-go/pkg/fabsdk/fabsdk.go
。
是否可以将断点置于方法fabsdk
和WithUser()
或仅在文件的行号处允许的断点?我可以使用gdb或delve或任何其他调试器。
答案 0 :(得分:1)
如果您拥有用于构建Go二进制文件的github.com/hyperledger/fabric-sdk-go/pkg/fabsdk/context.go
版本(例如,在src
或vendor
目录中),则只需打开该文件,找到{ {3}}函数,并将断点放在第一行。