Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 在OSX上的Monodevelop中调试不太正常_Macos_Mono_Monodevelop_Immediate Window - Fatal编程技术网

Macos 在OSX上的Monodevelop中调试不太正常

Macos 在OSX上的Monodevelop中调试不太正常,macos,mono,monodevelop,immediate-window,Macos,Mono,Monodevelop,Immediate Window,嘿,伙计们,刚刚安装在我的Mac雪豹OSX上: Mono 2.6和Mono 2.2 我创建了一个简单的C#控制台应用程序: public static void Main (string[] args) { Console.WriteLine ("Hello World!"); Console.Read(); } 当我开始输入“Console”时,intellisense工作得非常好 当我在调试模式下运行应用程序时,断点按预期命中 但是,在使用断

嘿,伙计们,刚刚安装在我的Mac雪豹OSX上:

Mono 2.6和Mono 2.2

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

public static void Main (string[] args)
    {
        Console.WriteLine ("Hello World!");
        Console.Read();
    }
当我开始输入“Console”时,intellisense工作得非常好

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

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

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

有人知道发生了什么吗


干杯

请。

尝试此操作,并在启用-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(); 
}

值得一提的是,我可以准确地再现您所描述的内容(MacOSX,相同的版本,类似的HelloWorld代码,在第一行代码中使用断点)。然而,只要我“跨过”下一行,弹出窗口就会正确显示为“控制台”。因此,这种行为似乎是可以接受的(至少对我来说)。

这是一个已知的bug吗?我不知道这是否是一个错误,可能是我做了什么。。。?有人知道我在说什么吗?我对Mono完全陌生…?众所周知,对于调试对象尚未加载的类型,这是一个问题。你的断点在程序调用控制台之前吗?有没有办法将类型显式加载到调试器中…?还没有,没有。这也不是我们在MonoDevelop中可以解决的问题;它需要在Mono运行时的调试器中修复。我深入挖掘了一点,并为您提出了一个bug:谢谢fupsduck,它会尝试一下并回复您。干杯你试过用-debug标志编译吗?嗯。。。我认为是这样。我单击了调试按钮,而不是运行按钮。今晚我会试试,因为我的Mac电脑在家里。如果它在返回0时使用断点,请在Console.Read()上尝试。如果在Console.WriteLine()上不起作用,则添加int-dummy;到文件顶部以在Console.WriteLine()上开始中断。。。谢谢fmr,很高兴知道。我的Mac电脑在家里,但今晚我一进屋就会再看一眼。你能告诉我你是否也可以使用即时窗口吗?干杯是的,即时窗口的行为相同。一旦执行了“Step Over”,您就可以评估“Console.CapsLock”,例如。正如我在对我的回答的评论中所说的,众所周知,MD目前只能在调试对象加载类型之后才能访问这些类型。