【问题标题】:Mono Tools Run in mono .net 4单声道工具在单声道 .net 4 中运行
【发布时间】:2011-08-09 03:01:36
【问题描述】:

我正在使用来自 mono-tools.org 的 Mono 工具,当我尝试使用单声道菜单以单声道运行我的 ASP MVC3 项目时,我收到以下错误:

有没有办法设置为使用 .net 4 编译器进行编译?我已将项目文件中的 targetFramework 设置为 v4.0。

我还尝试将 mono-tools 高级页面上的命令行参数设置为 --with-profile4=yes,但仍会导致相同的错误。

单声道--版本的输出

Mono JIT compiler version 2.10.2 (tarball) 
Copyright (C) 2002-2011 Novell, Inc and Contributors. www.mono-project.com
    TLS:           normal
    SIGSEGV:       normal
    Notification:  Thread + polling
    Architecture:  x86
    Disabled:      none
    Misc:          softdebug
    LLVM:          supported, not enabled.
    GC:            Included Boehm (with typed GC and Parallel Mark)

【问题讨论】:

    标签: asp.net-mvc-3 mono


    【解决方案1】:

    targetFramework 属性在此上下文中不存在——在检查您的应用程序配置时,运行时已经启动。在读取您的 web.config 之前,它需要知道什么框架版本。

    您需要在 Apache 配置中处理此问题。见this question。您需要使用 MonoServerPath Apache 指令告诉 Apache mod_mono 托管进程是 /usr/bin/mod-mono-server4(或您机器上的任何路径)。

    如果您使用 XSP 进行部署,那么您必须运行 xsp4

    (IIS 在这方面也没有什么特别之处——您必须将您的应用程序分配给一个应用程序池,并且您必须为您创建的每个池显式设置运行时版本。)

    旁注:如果您使用的工具将此属性添加到您的配置中,则这是该工具中的错误。

    【讨论】:

    • 我在 Visual Studio 中使用 Mono 工具 2.0.8152,而不是在生产服务器上运行 Mono。 Mono 工具有一个选项“Run in mono”,它会在使用 mono 而不是 .net 运行之前尝试编译 Web 应用程序。
    • 它可能会为你调用xsp4targetFramework 属性是否存在于您的 web.config 中,或者工具是否添加了它?
    • 它存在于我的 web.config <compilation debug="true" targetFramework="4.0"> 中。看起来单工具实际上是在使用 .net 2 调用服务器 - 所以这可能是关键。但我找不到任何地方说明如何将目标设置为 xsp4
    • 也许您使用的工具版本太旧,不知道 v4 是什么?
    • Novell(维护和销售这些工具的公司)已经存在一段时间了;他们被Attachmate买了。这些工具不再维护。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多