Smalltalk Pharo:菜单错误

Smalltalk Pharo:菜单错误,smalltalk,pharo,Smalltalk,Pharo,我打破了我的法罗形象,但我不知道到底是什么。现在,当我尝试将我的包归档以插入到新图像中时,我只看到“为什么您会看到此菜单”和“调试”。如果我在操场上运行菜单调试,我会得到一个后备菜单。 如何修复此错误 编辑:当我尝试单击我的软件包时,系统浏览器的行为非常奇怪,并弹出以下错误: 使用Max的密码,我得到2个零密钥: 第一个是我的代码中的一个错误(我为nil分配了一个类绑定,而不是一个同名的实例变量)。但是我无法编辑它,因为我无法通过系统浏览器访问它 第二个是ActiveEvent。我不知道这是从

我打破了我的法罗形象,但我不知道到底是什么。现在,当我尝试将我的包归档以插入到新图像中时,我只看到“为什么您会看到此菜单”和“调试”。如果我在操场上运行
菜单调试
,我会得到
一个后备菜单
。 如何修复此错误

编辑:当我尝试单击我的软件包时,系统浏览器的行为非常奇怪,并弹出以下错误:

使用Max的密码,我得到2个零密钥:

  • 第一个是我的代码中的一个错误(我为nil分配了一个类绑定,而不是一个同名的实例变量)。但是我无法编辑它,因为我无法通过系统浏览器访问它
  • 第二个是ActiveEvent。我不知道这是从哪里来的,也不知道是这个还是以前的nil导致系统浏览器行为怪异

    • 一种可能是您取消了类绑定。检查以下各项以获得为零的键和值的列表:

      Smalltalk globals associations select: [ :assoc |
          assoc value isNil or: [
              assoc key isNil ] ].
      
      顺便说一句:与其附加屏幕截图,不如附加堆栈。要获取堆栈跟踪,右键单击堆栈列表中最顶端的条目(在屏幕截图中选择的条目)并选择“复制到剪贴板”。然后将内容(或至少前30帧)粘贴到此处

      更新
      ActiveEvent
      似乎正常。我有同样的。第二个问题很可能是有问题的。您可以通过删除条目来作弊:

      Smalltalk globals removeKey: nil.
      

      如果做了一个快速的尝试,它似乎工作。

      我不知道什么是坏的,但你所有的代码都在.changes文件中,所以你应该能够从那里恢复。好的,但是不可能将这个文件的(一部分)导入到新的图像中,对吗?我可以用它在新创建的类中复制粘贴我的代码。谢谢你的快速回复!这是堆栈跟踪。使用你的密码,我得到2个零键。-第一个是我的代码中的一个错误(我为nil分配了一个类绑定,而不是一个同名的实例变量)。但是我不能编辑它,因为我不能通过系统浏览器访问它。-第二个是ActiveEvent。我不知道这是从哪里来的,也不知道是这个还是以前的nil导致系统浏览器行为怪异。这些信息属于您的问题。使用“编辑”链接并将链接(或直接跟踪)添加到问题。看看我更新的答案。这很有效!但是很明显,我无法重新添加这个类
      receiver“new”为nil
      是否重新编译了包含类引用的方法?你可能需要这样做。