.NET Ядро- это бесплатный, кросс-платформенный и с открытым исходным кодом, разработанная Microsoft для создания приложений для настольных компьютеров, мобильных приложений, веб – приложений, IoT приложений и игровых приложений и т.д. Если вы Dotnet разработчик от платформы Windows, ядро .NET помогает Вы можете легко настроить свою среду разработки на любых Linux и Unix-подобных операционных системах. В этом пошаговом руководстве объясняется, как установить Microsoft .NET Core SDK в Linux и как написать свое первое приложение с использованием .Net.
Установка Microsoft .NET Core SDK в Linux
Ядро .NET поддерживает GNU/Linux, Mac OS и Windows. Ядро .Net может быть установлено в популярных операционных системах GNU/Linux, включая Debian, Fedora, CentOS, Oracle Linux, RHEL, SUSE/openSUSE и Ubuntu. На момент написания данного руководства последняя версия ядра .NET была 2.2.
В Debian 9 вы можете установить .NET Core SDK, как показано ниже.
Прежде всего, вам необходимо зарегистрировать ключ Microsoft и добавить репозиторий .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:
Добавьте ключ Microsoft и включите репозиторий .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:
Добавьте ключ Microsoft и включите репозиторий .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 добавьте ключ и хранилище с помощью команд:
$ 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:
Добавьте ключ Microsoft и включите репозиторий ядра .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:
Зарегистрируйте ключ Microsoft и репозиторий ядра .NET с помощью команд:
$ 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:
Зарегистрируйте ключ Microsoft и репозиторий .NET с помощью команд:
$ 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
Создайте свое первое приложение
Мы успешно установили .Net Core SDK в нашу коробку Linux. Настало время создать наше первое приложение, используя dotnet.
Для целей данного руководства мы собираемся создать новое приложение под названием «andreyexApp». Для этого просто выполните следующую команду:
$ dotnet new console -o andreyexApp
Образец вывода:
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 andreyexApp/andreyexApp.csproj... Restoring packages for /home/sk/andreyexApp/andreyexApp.csproj... Generating MSBuild file /home/sk/andreyexApp/obj/andreyexApp.csproj.nuget.g.props. Generating MSBuild file /home/sk/andreyexApp/obj/andreyexApp.csproj.nuget.g.targets. Restore completed in 894.27 ms for /home/sk/andreyexApp/andreyexApp.csproj. Restore succeeded.
Как видно из вышеприведенного вывода, .Net создал новое приложение типа console. Параметр -o создает каталог с именем «andreyexApp», в котором вы храните данные своего
приложения со всеми необходимыми файлами.
Давайте перейдем в каталог andreyexApp и посмотрим, что там.
$ cd andreyexApp / $ ls obj andreyexApp.csproj Program.cs
В вашем распоряжении три файла с именем andreyexApp.csproj и Program.cs и один каталог с именем obj . По умолчанию файл Program.cs будет содержать код для запуска программы «Hello World» в консоли. Давайте посмотрим на код.
$ cat Program.cs using System; namespace andreyexApp { class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); } } }
Чтобы запустить только что созданное приложение, просто запустите следующую команду:
$ dotnet run Hello World!
Запустите программу Hello World, используя dotnet
Просто, не правда ли? Да! Теперь вы можете написать свой код в файле 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
Редактор кода Microsoft Visual Studio
Чтобы написать код, вы можете использовать ваши любимые редакторы по вашему выбору. Microsoft также имеет собственный редактор под названием «Microsoft Visual Studio Code» с поддержкой .NET. Это открытый, легкий и мощный редактор исходного кода. Он поставляется со встроенной поддержкой JavaScript, TypeScript и Node.js и имеет богатую экосистему расширений для других языков (таких как C ++, C #, Python, PHP, Go) и сред выполнения (таких как .NET и Unity). Это кроссплатформенный редактор кода, поэтому вы можете использовать его в Microsoft Windows, GNU/Linux и Mac OS X. Вы можете использовать его, если вам интересно.
Телеметрия
По умолчанию .NET core SDK собирает данные об использовании с помощью функции «Телеметрия». Собранные данные являются анонимными и передаются команде разработчиков и сообществу в рамках лицензии Creative Commons Attribution., Таким образом, команда .NET поймет, как используются инструменты, и решит, как их можно улучшить с течением времени. Если вы не хотите делиться информацией об использовании, вы можете просто отказаться от телеметрии, установив для переменной среды DOTNET_CLI_TELEMETRY_OPTOUT значение «1» или «true», используя вашу любимую оболочку.
И это все. Вы знаете, как установить .NET Core SDK на различные платформы Linux и как создать базовое приложение, используя его.