如何确定构建和安装当前Mono运行时的版本?

aba*_*hev 2 mono version

我想确定修改(如何在Git中正确调用它?),从中构建和安装当前的Mono运行时.

$ dmcs --version
Mono C# compiler version 2.9.0.0
Run Code Online (Sandbox Code Playgroud)

但这绝对不够.

XSP/ASP.NET错误页面提供了更多信息:

版本信息:Mono Runtime版本:2.8.1(master/cdf1247 Sat Sep 4 01:22:04 MSD 2010); ASP.NET版本:4.0.30319.1

但对我来说这似乎是一个肮脏的黑客.

怎么做得好?

ser*_*nko 17

如果您正在寻找单声道运行时版本; mscorlib中有一个内部的Mono.Runtime类,它有一个静态方法GetDisplayName,它应该返回一个当前运行时版本的字符串.此方法是私有的,但仍可通过反射访问.我写了一个小脚本来测试这个,检查一下是否适合你:

Type type = Type.GetType("Mono.Runtime");
if (type != null)
{                                          
    MethodInfo dispalayName = type.GetMethod("GetDisplayName", BindingFlags.NonPublic | BindingFlags.Static); 
    if (dispalayName != null)                   
        Console.WriteLine(dispalayName.Invoke(null, null)); 
}
Run Code Online (Sandbox Code Playgroud)

在我的系统上,它返回:

2.6.7(Debian 2.6.7-3ubuntu1~dhx1)

希望这有帮助,问候


sko*_*ima 5

mono -V 将输出版本字符串,包括源代码修订版.