本教程适用于以下操作系统版本

  • Ubuntu 22.04 (Jammy Jellyfish)
  • Ubuntu 22.04 (Jammy Jellyfish)

本页内容

  • 先决条件
  • 添加 Mono 仓库
  • 在 Ubuntu 上安装 Mono
  • 使用 Mono 创建 Hello World 应用
  • 使用 Mono 创建 ASP.NET 应用
  • 结论

Mono 是 .NET 框架的一个开源实现,也是一个用于构建跨平台应用的兼容软件框架。它基于 C# 和公共语言运行时(Common Language Runtime),并支持 Linux、Windows、macOS 以及嵌入式设备等多个平台。

在本教程中,你将逐步学习如何在 Ubuntu 22.04 上安装 Mono。随后,你将学习如何使用 Mono 以及一些用于开发应用的基础工具来创建一个 Hello World 应用。

那么,让我们开始吧。

先决条件

在开始本教程之前,请确保你具备以下条件:

  • 一台 Ubuntu 22.04 机器——桌面版或服务器版均可。
  • 一个具有管理员权限的非 root 用户。

添加 Mono 仓库

Mono 是一个可在 Linux、Windows、macOS 和 Docker 上安装的 .NET 框架实现。在本示例中,你将通过 APT 并使用官方 Mono 仓库将 Mono 安装到你的 Ubuntu 系统。

首先,运行以下命令将 ca-certificates 和 gnupg 软件包安装到你的 Ubuntu 服务器。

sudo apt install ca-certificates gnupg

输入 y 并按 ENTER 确认安装。

在 Ubuntu 22.04 上安装 Mono .NET Framework

现在运行以下命令,将 Mono GPG 密钥添加到 ' /usr/share/keyrings/mono-official-archive-keyring.gpg '。

sudo gpg --homedir /tmp --no-default-keyring \
--keyring /usr/share/keyrings/mono-official-archive-keyring.gpg \
--keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

在 Ubuntu 22.04 上安装 Mono .NET Framework

然后,添加 Mono 仓库。在本示例中,你将在 Ubuntu 系统上安装 Mono Stable。

echo \
"deb [signed-by=/usr/share/keyrings/mono-official-archive-keyring.gpg] https://download.mono-project.com/repo/ubuntu stable-focal main" | \
sudo tee /etc/apt/sources.list.d/mono-official-stable.list

在 Ubuntu 22.04 上安装 Mono .NET Framework

最后,使用以下命令更新并刷新你的 Ubuntu 仓库。

sudo apt update

你将看到 Mono 仓库已被添加到你的 Ubuntu 系统。

在 Ubuntu 22.04 上安装 Mono .NET Framework

在 Ubuntu 上安装 Mono

既然已经添加了 Mono 仓库,我们开始安装吧。

首先,运行以下 apt 命令查看可用的 Mono 软件包。

sudo apt search mono-*

重点来看,你可以看到多个可用的 Mono 软件包:

  • mono-devel:该软件包用于编译 .NET 应用。
  • mono-complete:用于通过 Mono 开发 .NET 应用的完整软件包。

在 Ubuntu 22.04 上安装 Mono .NET Framework

现在使用以下命令将 Mono 安装到你的 Ubuntu 系统。输入 y 确认并按 ENTER 继续。在本示例中,你将安装 mono-complete 和用于调试的 mono-dbg。

sudo apt install mono-complete mono-dbg

在 Ubuntu 22.04 上安装 Mono .NET Framework

安装完成后,使用以下命令查看 Mono 版本。

mono -V

在以下输出中,你可以看到已安装 Mono 6.12。

在 Ubuntu 22.04 上安装 Mono .NET Framework

使用 Mono 创建 Hello World 应用

至此,你已在 Ubuntu 系统上安装了 mono-complete 软件包,可以开始开发 Mono 应用了。在本示例中,你将使用 Mono 创建一个基本的控制台应用,并借助 'csc' 编译器来编译你的应用。

首先,使用你喜欢的文本编辑器创建一个新文件 hello-mono.cs 。

vim hello-mono.cs

将以下代码复制到 hello-mono.cs 文件。

using System;
public class HelloWorld
{
    public static void Main(string[] args)
    {
        Console.WriteLine ("Hello Mono World");
    }
}

保存文件。

现在,像这样使用 csc 编译器编译 hello-mono.cs 文件。编译后的应用应为 hello-mono.exe 。

csc hello-mono.cs

最后,使用以下 mono 命令运行 hello-mono.exe 文件。如果成功,你将看到如下所示的 ' Hello Mono World ' 消息。

mono hello-mono.exe

在 Ubuntu 22.04 上安装 Mono .NET Framework

使用 Mono 创建 ASP.NET 应用

在以下示例中,你将创建一个简单的 ASP.NET 应用,并在 Ubuntu 系统上使用 Mono 运行它。

使用你喜欢的编辑器创建一个新文件 ' hello-world.aspx '。

vim hello-world.aspx

将以下代码插入你的文件。

<%@ Page Language="C#" %>
<html>
<head>
   <title>Sample Calendar</title>
</head>
<asp:calendar showtitle="true" runat="server">
</asp:calendar>

完成后保存并退出文件。

现在,执行以下命令来运行你的 ASP.NET 程序。

xsp4 --port 9000

如下所示,你的应用应当可以通过 9000 端口访问。

在 Ubuntu 22.04 上安装 Mono .NET Framework

打开你的网页浏览器并访问 http://localhost:9000/hello-world.aspx。如果安装成功,你应看到如下页面。

在 Ubuntu 22.04 上安装 Mono .NET Framework

要终止该进程,你可以现在在终端中按 ENTER 或 Ctrl+c。

结论

总结一下,你已在 Ubuntu 机器上安装了 Mono,并学习了如何使用 Mono 为两种不同目的创建简单的 hello-world 应用:通过 ASP.NET 创建基本的控制台应用和 Web 应用。从现在起,你可以尝试在 Ubuntu 机器上搭建一个 IDE(集成开发环境)。你可以在 Visual Code Studio、Eclipse、MonoDevelop 和 ShardDevelop 之间进行选择。