如何在 Linux 中安裝微軟的 .NET Core SDK
.NET Core 是微軟提供的免費、跨平台和開源的開發框架,可以構建桌面應用程序、移動端應用程序、網路應用程序、物聯網應用程序和遊戲應用程序等。如果你是 Windows 平台下的 dotnet 開發人員的話,使用 .NET core 可以很輕鬆就設置好任何 Linux 和類 Unix 操作系統下的開發環境。本分步操作指南文章解釋了如何在 Linux 中安裝 .NET Core SDK 以及如何使用 .NET 開發出第一個應用程序。
Linux 中安裝 .NET Core SDK
.NET Core 支持 GNU/Linux、Mac OS 和 Windows 系統,可以在主流的 GNU/Linux 操作系統上安裝運行,包括 Debian、Fedora、CentOS、Oracle Linux、RHEL、SUSE/openSUSE 和 Ubuntu 。在撰寫這篇教程時,其最新版本為 2.2。
Debian 9 系統上安裝 .NET Core SDK,請按如下步驟進行。
首先,需要註冊微軟的密鑰,接著把 .NET 源倉庫地址添加進來,運行的命令如下:
$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
$ sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
$ wget -q https://packages.microsoft.com/config/debian/9/prod.list
$ sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
$ sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
$ sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
註冊好密鑰及添加完倉庫源後,就可以安裝 .NET SDK 了,命令如下:
$ sudo apt-get update
$ sudo apt-get install dotnet-sdk-2.2
Debian 8 系統上安裝:
增加微軟密鑰,添加 .NET 倉庫源:
$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
$ sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
$ wget -q https://packages.microsoft.com/config/debian/8/prod.list
$ sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
$ sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
$ sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
安裝 .NET SDK:
$ sudo apt-get update
$ sudo apt-get install dotnet-sdk-2.2
Fedora 28 系統上安裝:
增加微軟密鑰,添加 .NET 倉庫源:
$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ wget -q https://packages.microsoft.com/config/fedora/27/prod.repo
$ sudo mv prod.repo /etc/yum.repos.d/microsoft-prod.repo
$ sudo chown root:root /etc/yum.repos.d/microsoft-prod.repo
現在, 可以安裝 .NET SDK 了:
$ sudo dnf update
$ sudo dnf install dotnet-sdk-2.2
Fedora 27 系統下:
增加微軟密鑰,添加 .NET 倉庫源,命令如下:
$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ wget -q https://packages.microsoft.com/config/fedora/27/prod.repo
$ sudo mv prod.repo /etc/yum.repos.d/microsoft-prod.repo
$ sudo chown root:root /etc/yum.repos.d/microsoft-prod.repo
接著安裝 .NET SDK ,命令如下:
$ sudo dnf update
$ sudo dnf install dotnet-sdk-2.2
CentOS/Oracle 版本的 Linux 系統上:
增加微軟密鑰,添加 .NET 倉庫源,使其可用:
$ sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
更新源倉庫,安裝 .NET SDK:
$ sudo yum update
$ sudo yum install dotnet-sdk-2.2
openSUSE Leap 版本的系統上:
添加密鑰,使倉庫源可用,安裝必需的依賴包,其命令如下:
$ sudo zypper install libicu
$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ wget -q https://packages.microsoft.com/config/opensuse/42.2/prod.repo
$ sudo mv prod.repo /etc/zypp/repos.d/microsoft-prod.repo
$ sudo chown root:root /etc/zypp/repos.d/microsoft-prod.repo
更新源倉庫,安裝 .NET SDK,命令如下:
$ sudo zypper update
$ sudo zypper install dotnet-sdk-2.2
Ubuntu 18.04 LTS 版本的系統上:
註冊微軟的密鑰和 .NET Core 倉庫源,命令如下:
$ wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb
使 Universe 倉庫可用:
$ sudo add-apt-repository universe
然後,安裝 .NET Core SDK ,命令如下:
$ sudo apt-get install apt-transport-https
$sudo apt-get update
$ sudo apt-get install dotnet-sdk-2.2
Ubuntu 16.04 LTS 版本的系統上:
註冊微軟的密鑰和 .NET Core 倉庫源,命令如下:
$ wget -q https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb
然後安裝 .NET core SDK:
$ sudo apt-get install apt-transport-https
$ sudo apt-get update
$ sudo apt-get install dotnet-sdk-2.2
創建你的第一個應用程序
我們已經成功的在 Linux 機器中安裝了 .NET Core SDK。是時候使用 dotnet 創建第一個應用程序了。
接下來的目的,我們會創建一個名為 ostechnixApp 的應用程序。為此,可以簡單的運行如下命令:
$ dotnet new console -o ostechnixApp
示例輸出:
Welcome to .NET Core!
------------------Learn more about .NET Core: https://aka.ms/dotnet-docs
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli-docs
Telemetry
------The .NET Core tools collect usage data in order to help us improve your experience. The data is anonymous and doesn't include command-line arguments. The data is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
Read more about .NET Core CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
ASP.NET Core
---------Successfully installed the ASP.NET Core HTTPS Development Certificate.
To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only). For establishing trust on other platforms refer to the platform specific documentation.
For more information on configuring HTTPS see https://go.microsoft.com/fwlink/?linkid=848054.
Getting ready...
The template "Console Application" was created successfully.
Processing post-creation actions...
Running 'dotnet restore' on ostechnixApp/ostechnixApp.csproj...
Restoring packages for /home/sk/ostechnixApp/ostechnixApp.csproj...
Generating MSBuild file /home/sk/ostechnixApp/obj/ostechnixApp.csproj.nuget.g.props.
Generating MSBuild file /home/sk/ostechnixApp/obj/ostechnixApp.csproj.nuget.g.targets.
Restore completed in 894.27 ms for /home/sk/ostechnixApp/ostechnixApp.csproj.
Restore succeeded.
正如上面的輸出所示的,.NET 已經為我們創建一個控制台類型的應用程序。-o
參數創建了一個名為 「ostechnixApp」 的目錄,其包含有存儲此應用程序數據所必需的文件。
讓我們切換到 ostechnixApp 目錄,看看裡面有些什麼。
$ cd ostechnixApp/
$ ls
obj ostechnixApp.csproj Program.cs
可以看到有兩個名為 ostechnixApp.csproj
和 Program.cs
的文件,以及一個名為 obj
的目錄。默認情況下, Program.cs
文件包含有可以在控制台中運行的 「Hello World」 程序代碼。可以看看此代碼:
$ cat Program.cs
using System;
namespace ostechnixApp
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
要運行此應用程序,可以簡單的使用如下命令:
$ dotnet run
Hello World!
很簡單,對吧?是的,就是如此簡單。現在你可以在 Program.cs
這文件中寫上自己的代碼,然後像上面所示的執行。
或者,你可以創建一個新的目錄,如例子所示的 mycode
目錄,命令如下:
$ mkdir ~/.mycode
$ cd mycode/
然後運行如下命令,使其成為你的新開發環境目錄:
$ dotnet new console
示例輸出:
The template "Console Application" was created successfully.
Processing post-creation actions...
Running 'dotnet restore' on /home/sk/mycode/mycode.csproj...
Restoring packages for /home/sk/mycode/mycode.csproj...
Generating MSBuild file /home/sk/mycode/obj/mycode.csproj.nuget.g.props.
Generating MSBuild file /home/sk/mycode/obj/mycode.csproj.nuget.g.targets.
Restore completed in 331.87 ms for /home/sk/mycode/mycode.csproj.
Restore succeeded.
上的命令會創建兩個名叫 mycode.csproj
和 Program.cs
的文件及一個名為 obj
的目錄。用你喜歡的編輯器打開 Program.cs
文件, 刪除或修改原來的 「hello world」 代碼段,然後編寫自己的代碼。
寫完代碼,保存,關閉 Program.cs
文件,然後運行此應用程序,命令如下:
$ dotnet run
想要查看安裝的 .NET core SDK 的版本的話,可以簡單的運行:
$ dotnet --version
2.2.101
要獲得幫助,請運行:
$ dotnet --help
使用微軟的 Visual Studio Code 編輯器
要編寫代碼,你可以任選自己喜歡的編輯器。同時微軟自己也有一款支持 .NET 的編輯器,其名為 「Microsoft Visual Studio Code」。它是一款開源、輕量級、功能強大的源代碼編輯器。其內置了對 JavaScript、TypeScript 和 Node.js 的支持,並為其它語言(如 C++、C#、Python、PHP、Go)和運行時態(如 .NET 和 Unity)提供了豐富的擴展,已經形成一個完整的生態系統。它是一款跨平台的代碼編輯器,所以在微軟的 Windows 系統、GNU/Linux 系統和 Mac OS X 系統都可以使用。如果對其感興趣,就可以使用。
想了解如何在 Linux 上安裝和使用,請參閱以下指南。
Linux 中安裝 Microsoft Visual Studio Code
關於 Visual Studio Code editor 中 .NET Core 和 .NET Core SDK 工具的使用,此網頁有一些基礎的教程。想了解更多就去看看吧。
Telemetry
默認情況下,.NET core SDK 會採集用戶使用情況數據,此功能被稱為 Telemetry。採集數據是匿名的,並根據知識共享署名許可分享給其開發團隊和社區。因此 .NET 團隊會知道這些工具的使用狀況,然後根據統計做出決策,改進產品。如果你不想分享自己的使用信息的話,可以使用順手的 shell 工具把名為 DOTNET_CLI_TELEMETRY_OPTOUT
的環境變數參數設置為 1
或 true
,這樣就簡單的關閉此功能了。
就這樣。你已經知道如何在各 Linux 平台上安裝 .NET Core SDK 以及知道如何創建基本的應用程序了。想了解更多 .NET 使用知識的話,請參閱此文章末尾給出的鏈接。
會爆出更多乾貨的。敬請關注!
祝賀下!
資源
via: https://www.ostechnix.com/how-to-install-microsoft-net-core-sdk-on-linux/
作者:SK 選題:lujun9972 譯者:runningwater 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive