1

Mono を使用して ASP MVC 3 (.NET Framework 4.0) アプリケーションを ubuntu 12.04 にデプロイしようとしています。これは、私がインストールした Mono の現在のバージョンです。

Mono JIT コンパイラ バージョン 2.10.8.1 (Debian 2.10.8.1-1ubuntu2.2) Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com TLS: __thread SIGSEGV: altstack 通知: epoll アーキテクチャ: amd64 無効: なし その他: softdebug LLVM: サポートされていますが、有効になっていません。GC:ベーム付属(GC型、パラレルマーク付)

コードが壊れている場所を正確に知るために、ASP プロジェクトを削除し、コンソール アプリケーションからメソッドを実行して、デバッグできるようにしました。これが私のコードが壊れている方法であることがわかりました:

    public IEnumerable<Type> loadClassAttributes<TAttribute>() where TAttribute : System.Attribute
    {
        return from a in AppDomain.CurrentDomain.GetAssemblies()
               from t in a.GetTypes()
               where t.IsDefined(typeof(TAttribute), false)
               select t;
    }

そして、これはMono Developerが示しているエラースタックです:

System.Linq.Enumerable+c__Iterator2B 3[[System.Reflection.Assembly, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Type, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[<>__AnonType12[[System.Reflection.Assembly, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Type, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]、TBL.Common.Dal、Version=1.0.0.0、Culture=neutral、PublicKeyToken=null]].MoveNext ()

XSP4 を使用して ASP MVC からこの同じアプリケーションを実行したとき、これは私のブラウザーが表示するスクリーンショットです

ここに画像の説明を入力

私は何年も .NET 開発を行ってきましたが、Mono の初心者です。他の誰かがこの問題に取り組んでいて、それを解決する方法があるのだろうか.

前もって感謝します。

編集:ログ出力を追加

Mono: gc は 31 usecs かかりました Mono: Assembly Loader プローブの場所: '/usr/lib/mono/4.0/mscorlib.dll'。Mono: Image addref mscorlib[0x20fc8c0] -> /usr/lib/mono/4.0/mscorlib.dll[0x20fbb90]: 2 Mono: AOT が AOT モジュール /usr/lib/mono/4.0/mscorlib.dll.so をロードできませんでした: /usr/lib/mono/4.0/mscorlib.dll.so: 共有オブジェクト ファイルを開けません: そのようなファイルやディレクトリはありません

Mono: アセンブリ ローダーは、次の場所からアセンブリを読み込みました: '/usr/lib/mono/4.0/mscorlib.dll'。Mono: 構成を解析しようとしています: '/usr/lib/mono/4.0/mscorlib.dll.config'. Mono: 構成を解析しようとしています: '/etc/mono/assemblies/mscorlib/mscorlib.config'。Mono: アセンブリ mscorlib[0x20fc8c0] がドメイン alogimex.test.exe に追加されました。ref_count=1 Mono: Config が解析しようとしています: '/etc/mono/config'. Mono: 構成を解析しようとしています: '/home/mleyzaola/.mono/config'. Mono: アセンブリ ローダーの調査場所: 'alogimex.test.exe'。Mono: 画像 addref alogimex.test[0x21791f0] -> /home/mleyzaola/net/alogimex.mono/alogimex.mono.solution/alogimex.test/bin/Debug/alogimex.test.exe[0x20fa980]: 3 Mono: アセンブリalogimex.test[0x21791f0] がドメイン alogimex.test.exe に追加されました。ref_count=1 Mono:

4

1 に答える 1

0

何かをして修正しても、最初は何が悪かったのか見当もつかないというのは奇妙に感じます。ただし、これは Mono Develop 3.1 のアップグレードで修正されました。

他の誰かがこの問題を抱えている場合、答えはここにあります: https://stackoverflow.com/a/16093182/917268

于 2013-09-13T05:08:07.783 に答える