TeamCity On-Premises 2026.2 Help

Mono サポート

Mono フレームワークは、Windows と Unix ベースのプラットフォームの両方で .NET アプリケーションを実行するための代替フレームワークです。
詳細については、 Mono 公式サイトを参照してください。

サポートされているビルドランナー

TeamCity は、Mono フレームワークおよび .NET Framework で、 NAntMSBuild ランナーを使用した .NET ビルドの実行をサポートしています。 (Mono では xbuild として MSBuild)

NuGet ランナーは、エージェントに Mono がインストールされている場合、Linux と macOS をサポートします。 Mono 4.4.2\+ 上の NuGet CLI 3.2\+ のみがサポートされていることに注意してください。

レポート作成タスクをテストするは Mono でもサポートされています。

Mono プラットフォーム検出

ビルドエージェントが起動すると、Mono のインストールを自動的に検出します。

各プラットフォームで、Mono の検出は NAnt のものと互換性があります。 NAnt でのフレームワーク検出については NAnt.exe.config を参照してください。

エージェントプロパティ

エージェント側で Mono が自動的に検出されると、次のプロパティが設定されます。

  • Monomono 実行ファイルへのパス (Mono JIT)

  • Mono バージョン — Mono バージョン

  • Mono X.Z — 存在する場合は MONO_ROOT/lib/mono/X.Z に設定

  • Mono X.Z_x64 — 存在し、Mono アーキテクチャが x64 の場合は、 MONO_ROOT/lib/mono/X.Z に設定します

  • Mono X.Z_x86 — 存在し、Mono アーキテクチャが x86 の場合は、 MONO_ROOT/lib/mono/X.Z に設定します

Mono のインストールを自動的に検出できない場合 (たとえば、Mono フレームワークをカスタムディレクトリにインストールした場合)、 エージェント構成ファイルでこれらのプロパティを手動で設定することにより、ビルドランナーでこれらのプロパティを利用できるようにすることができます。

Windows 固有事項

Windows での Mono フレームワークの自動検出には以下の特徴があります。

  1. Mono バージョンは HKLM\SOFTWARE\Novell\Mono\DefaultCLR から読み込まれます。

  2. フレームワークパスは HKLM\SOFTWARE\Novell\Mono\%MonoVersion% から抽出されます。

  3. プラットフォームアーキテクチャは mono.exe を分析することによって検出されます。

macOS 固有事項

  1. フレームワークは /Library/Frameworks/Mono.framework/Versions から自動的に検出されます。

  2. 最も高いバージョンが選択されています。

  3. フレームワークパスは /Library/Frameworks/Mono.framework/Versions/%MonoVersion%/lib/mono から抽出されます。

  4. Mono 公式ビルドは X86 のみをサポートするため、プラットフォームアーキテクチャは x86 に固定されています。

カスタム Linux/Unix 固有事項

Unix での Mono フレームワークの自動検出には以下の特徴があります。

  1. Mono バージョンは pkg-config --modversion mono から読み込まれます。

  2. フレームワークパスは pkg-config --variable=prefix monopkg-config --variable=libdir mono から抽出されます。

  3. プラットフォームアーキテクチャは、 PREFIX/bin/mono 実行可能ファイルを分析することによって検出されます。 PREFIX/bin ディレクトリを パス の先頭に追加し、 PKG_CONFIG_PATHpkg-config(1) で説明)を PREFIX/lib/pkgconfig で更新することにより、カスタムの場所から Mono を強制的に検出できます。

2026 年 9 月 11 日