【问题标题】:Debugging in Monodevelop on OSX not quite working在 OSX 上的 Monodevelop 中调试不太正常
【发布时间】:2009-12-29 11:15:15
【问题描述】:

大家好,刚刚安装在我的 Mac Snow Leopard OSX 上:

Mono 2.6 和 Monodevelop 2.2

我创建了一个简单的 C# 控制台应用程序:

public static void Main (string[] args)
    {
        Console.WriteLine ("Hello World!");
        Console.Read();
    }

当我开始输入“Console”时,intellisense 工作得很好。

当我在调试模式下运行应用程序时,断点按预期命中。

但是,在使用断点进行调试时,如果我将鼠标悬停在“控制台”上,它会显示“未知标识符”

当我尝试使用即时窗口时,没有任何效果。我输入的任何内容都会显示“未知标识符”。

有人知道怎么回事吗?

干杯!

【问题讨论】:

    标签: macos mono monodevelop immediate-window


    【解决方案1】:

    试试这个并使用 -debug 标志进行编译:

    public static int Main (string[] args) 
    { 
        Console.WriteLine ("Hello World!"); 
        Console.Read(); 
        return 0; // Place breakpoint here
    }
    

    如果可行,那么试试这个:

    public static void Main (string[] args) 
    { 
        int dummy;
        Console.WriteLine ("Hello World!"); // Place breakpoint here
        Console.Read(); 
    }
    

    【讨论】:

    • 感谢 fupsduck,它会尝试并回复您。干杯!
    • 您是否尝试在打开 -debug 标志的情况下进行编译?
    • 嗯...我想是的。我点击了调试按钮,而不是运行按钮。我今晚会试试,因为我的 Mac 在家里。干杯老兄
    • 如果它在返回 0 时使用断点,然后尝试使用 Console.Read()。如果这有效但在 Console.WriteLine() 上时无效,则添加 int dummy;到文件顶部开始在 Console.WriteLine() 上中断。
    【解决方案2】:

    【讨论】:

    • 这是一个已知的错误吗?我不知道这是否是一个错误,可能是我做过的事情......?有人知道我在说什么吗?我对 Mono 完全陌生...?
    • 已知被调试对象尚未加载的类型存在问题。你的断点是在程序调用Console之前吗?
    • 有没有办法将类型显式加载到调试器中...?
    • 还没有,没有。这也不是我们可以在 MonoDevelop 中解决的问题。它需要在 Mono 运行时的调试器中修复。
    • 我挖得更深了,给你提了一个bug:bugzilla.novell.com/show_bug.cgi?id=570855
    【解决方案3】:

    对于它的价值,我可以准确地重现您所描述的内容(Mac OS X,相同的版本,类似的 Hello World 代码,在第一行代码中使用断点)。但是,只要我“跨步”到下一行,弹出窗口就会正确显示“控制台”。因此,这种行为似乎是可以接受的(至少对我而言)。

    【讨论】:

    • 嗯...谢谢 fmr,很高兴知道。我的 Mac 在家里,但今晚我一进去,我会再看看它。你能告诉我你是否也可以使用即时窗口好吗?干杯!
    • 是的,即时窗口的行为相同。例如,一旦执行“Step Over”,您就可以评估“Console.CapsLock”。
    • 就像我在 cmets 中对我的回答所说的那样,已知 MD 目前只能在被调试者加载后才能访问类型。
    猜你喜欢
    • 1970-01-01
    • 2017-11-17
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    • 1970-01-01
    • 2011-11-30
    • 1970-01-01
    相关资源
    最近更新 更多