我想确定构建和安装当前Mono运行时的修订版(如何在Git中正确调用它?)。
$ dmcs --version
Mono C# compiler version 2.9.0.0
但这绝对不够。
XSP / ASP.NET错误页面提供了更多信息:
版本信息:Mono Runtime版本:2.8.1(master / cdf1247星期六9月4日01:22:04 MSD 2010); ASP.NET版本:4.0.30319.1
但对我来说这似乎是一个肮脏的黑客。
如何正确地做到这一点?
答案 0 :(得分: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));
}
在我的系统上返回:
2.6.7(Debian 2.6.7-3ubuntu1~dhx1)
希望这有帮助,尊重
答案 1 :(得分:5)
mono -V
将输出版本字符串,包括源代码修订版。