本篇文章向大家介绍《OpenShift Go-Client api 调用导致程序崩溃 - 出现运行时错误:"无效的内存地址或 nil 指针取消引用"》,主要包括,具有一定的参考价值,需要的朋友可以参
本篇文章向大家介绍《OpenShift Go-Client api 调用导致程序崩溃 - 出现运行时错误:"无效的内存地址或 nil 指针取消引用"》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。
问题内容我正在使用基本的 go 代码来验证使用 openshift api 模块在命名空间中创建的路由 - https://GitHub.com/openshift/api 但它很恐慌
$猫route.go
package main
import (
"context"
"fmt"
routev1 "github.com/openshift/api/route/v1"
"k8s.io/apiMachinery/pkg/types"
"sigs.k8s.io/controller-runtime/pkg/client"
)
func main() {
const (
namespace = "test"
routename = "nodejs-basic"
)
var k8sclient client.client
route := &routev1.route{}
err := k8sclient.get(context.todo(), types.namespacedname{name: routename, namespace: namespace}, route)
if err != nil {
fmt.println("some issue")
}
fmt.println("api call completed")
}
执行时出现恐慌
$ go 运行route.go
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x10683e7]
goroutine 1 [running]:
main.main()
/home/amit/go/src/github.com/amitkrout/usingopenshiftapi/route.go:22 +0x27
exit status 2
有什么指针吗?可能是什么原因以及如何解决?
我创建了一个 git 存储库 - Https://github.com/amitkrout/usingopenshiftapi。您也可以通过 pr 在存储库中提出修复建议
您尚未初始化 k8sClient
,因此它是 nil
,并且调用 k8sClient.Get()
最终会导致 nil 指针取消引用。
获得客户的一种方法是使用 clientcmd;那里的文档展示了如何去做。
理论要掌握,实操不能落!以上关于《OpenShift Go-Client API 调用导致程序崩溃 - 出现运行时错误:"无效的内存地址或 nil 指针取消引用"》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注编程网公众号吧!
--结束END--
本文标题: OpenShift Go-Client API 调用导致程序崩溃 - 出现运行时错误:"无效的内存地址或 nil 指针取消引用"
本文链接: https://lsjlt.com/news/595962.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-04-05
2024-04-05
2024-04-05
2024-04-04
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-04
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0