1
Vegetable 2020-08-11 09:41:43 +08:00 1
这样信息不够吧,这报错信息太大众脸了
|
2
zhaoxj58 2020-08-11 09:41:43 +08:00 via iPhone 1
没有更详细的信息吗,比如你的代码是在哪一行 panic 的
|
4
zchlwj 2020-08-11 09:48:36 +08:00
这不是说的很清楚嘛?空指针 至于为啥空指针,根据上面的信息,你觉得能知道嘛?
|
5
shawngao OP |
6
lwldcr 2020-08-11 09:50:44 +08:00 1
感觉是代码有 bug,换台机器没有问题可能只是没有跑到使用这个 nil 变量的逻辑
盲猜是声明了某个 pointer 类型的变量但没有初始化 |
8
hq136234303 2020-08-11 09:53:31 +08:00 1
很多都是初始化问题。没注意或者没调用吧
|
9
hopingtop 2020-08-11 09:54:10 +08:00 1
这种情况多数是自身写的 BUG 所致,看看是否用到了 goroutine, 如果用到了,那么人肉编译,就不一定看得出来问题。如果是必然现象就断点,如果必然现象,就再好好理一理代码吧。特别是一些 初始化的问题。多看看
|
10
baiyi 2020-08-11 09:55:18 +08:00 1
大概率代码问题,如果是机器问题会有其他报错
|
11
shawngao OP 我查到了,是运行目录的问题,所以找不到配置目录初始化。
但为啥会出现运行目录不对的问题,我还得再查一下 多谢各位老哥 |
12
GoLand 2020-08-11 09:58:08 +08:00 1
遇到过。就是代码有 bug 。
|
13
zarte 2020-08-11 09:58:26 +08:00 1
在错误之前把变量打印出来看看
如果不是代码问题记得到时 @我下 |
14
wangritian 2020-08-11 10:00:39 +08:00 1
有没有把指针转为 uintptr,过一阵又转回去取内容的
|
15
tikazyq 2020-08-11 10:00:41 +08:00 1
感觉是 cast 了 nil 值变量导致的
|
16
shawngao OP 已经解决问题,是代码问题,但不是代码直接导致的。
具体原因是这样,昨天我写了个读配置文件的函数,这个函数查找 conf 目录下所有子目录,然后再查找所有子目录下的所有配置文件。 代码因为用了回调,在没找到配置文件时提前返回了。 然后没问题是因为没提前返回,但昨天打开过这个目录,多了个.DS_Store,就出问题了 .DS_Store 又被 gitignore 了 另外一台电脑没有.DS_Store,所以没问题 结贴,谢谢大家 @Vegetable @zhaoxj58 @zchlwj @lwldcr @hq136234303 @hopingtop @baiyi @GoLand @zarte @wangritian @tikazyq |
17
shawngao OP 因为现在是独立开发,遇到问题容易陷死胡同,不过一般不太会有问题,真的很感谢大家。
|
18
situs 2020-08-11 10:49:10 +08:00
debug.Stack() 可以加一下 有助于 debug
|
19
reus 2020-08-11 11:38:10 +08:00 4
最烦这种自以为“确定不是代码问题”的
|
20
Mohanson 2020-08-11 11:45:15 +08:00 via Android 1
建议楼主看一下这篇文章的前半部分: http://accu.cc/content/gameboy/other/test/
|
22
shawngao OP 只是当时我确定不是堆栈那段代码的问题,所以没贴。
事后呢,我检讨自己之前下结论过于草率,以为只是环境的问题。 作为一个多年的老 RD,我明白这次问题在于太急于写业务,没有能够静下心来想一想。 甚至我忽略了一开始的直觉,没办法,除了开发还要操心一堆事情 |
23
imzcg2 2020-08-11 12:29:06 +08:00
所以是 mac 祸嗐了你?
|