这是在 Ubuntu 10.04 上新安装的 Mindtouch Core。我一直在关注安装指南在 Mindtouch 社区网站上。
当我尝试启动 dekiwiki 服务时,它崩溃并出现以下错误:
** (/var/www/dekiwiki/bin/mindtouch.host.exe:14465): WARNING **: The following assembly referenced from /var/www/dekiwiki/bin/mindtouch.core.dll could not be loaded:
Assembly: System.Web.Routing (assemblyref_index=2)
Version: 3.5.0.0
Public Key: 31bf3856ad364e35
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/var/www/dekiwiki/bin).
** (/var/www/dekiwiki/bin/mindtouch.host.exe:14465): WARNING **: Could not load file or assembly 'System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies.
Unhandled Exception: MindTouch.Dream.DreamAbortException: HTTP Status: InternalError(500)
Server stack trace:
at MindTouch.Dream.DreamHostService+<StartService>d__68.MoveNext () [0x00000]
at MindTouch.Tasking.Coroutine.Continue () [0x00000]
Exception rethrown at [0]:
at MindTouch.Dream.DreamHostService+<StartService>d__68.MoveNext () [0x00000]
at MindTouch.Tasking.Coroutine.Continue () [0x00000]
Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object
at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object_EventArgs (object,System.EventArgs)
at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object_EventArgs (object,System.EventArgs)
at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object_EventArgs (object,System.EventArgs)
at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object_EventArgs (object,System.EventArgs)
at System.Collections.Generic.List`1[MindTouch.Tasking.TaskTimerFactory].AddEnumerable (IEnumerable`1 ) [0x00000]
at System.Collections.Generic.List`1[MindTouch.Tasking.TaskTimerFactory]..ctor (IEnumerable`1 ) [0x00000]
at System.Linq.Enumerable.ToArray[TaskTimerFactory] (IEnumerable`1 source) [0x00000]
at MindTouch.Tasking.TaskTimerFactory.get_Factories () [0x00000]
at MindTouch.Tasking.TaskTimerFactory.ShutdownAll () [0x00000]
at MindTouch.Dream.DreamConsoleHost.Main (System.String[] args) [0x00000]
我已仔细检查并安装了 Mono 2.10,并且 System.Web.Routing 程序集肯定存在,但 Mindtouch 只是找不到它。
有任何想法吗?
答案1
弄清楚了。
安装说明底部有一条注释,提示通过运行来检查单声道版本mono --version
。
果然,/usr/bin/mono
仍然运行 Mono 1.x。
我进行了以下操作以确保 Mono 2.10 能够运行并且一切顺利启动。
mv mono mono.old
mv gmcs gmcs.old
ln -s /opt/mono-2.10/bin/mono /usr/bin/mono
ln -s /opt/mono-2.10/bin/gmcs /usr/bin/gmcs