Несколько месяцев назад состоялся релиз среды разработки программного обеспечения от Microsoft - Visual Code. Тогда же было анонсировано выход с открытым исходным кодом платформы Net Core для Linux, позволяющей писать программы на ASP.NET и C# для Linux. И вот, Microsoft сдержала свое слово. Пару дней назад состоялся релиз первой версии Net Core 1.0 preview 2. Эта платформа официально поддерживается в Red Hat Enterprice и ряде других дистрибутивах, в том числе Ubuntu, Fedora, OpenSUSE.
Платформа Net Core - это следующее поколение Net Framework. Раньше Net Framework делился на несколько потоков, это NET для компьютеров, NET для мобильных телефонов, NET Silverlight и NET Windows Store. Все эти продукты поддерживались разными командами и при разработке возникало много несоответствий. Поэтому и было принято решение создать единую, платформу Net Core, которая заменит старые компоненты и сможет использоваться на разных устройствах и операционных системах, в том числе Linux и Mac OS. Если совсем просто, то Net Core - это набор компиляторов и библиотек для разработки программ на языке C# (Си шарп), а Visual Code - всего лишь среда разработки, текстовый редактор с подсветкой синтаксиса и другими плюшками.
В этой инструкции будет рассмотрена установка NET Core 1.0 и среды разработки Visual Code в Ubuntu 16.04. После установки вы сможете перейти к созданию своих программ.
Содержание статьи:
Установка Visual Code
Релиз Visual Code состоялся достаточно давно, и эта программа была достаточно протестирована и отлажена. Поскольку это среда разработки от Microsoft, именно ее мы будем использовать для создания Net программ в Linux. Установка Visual Code Ubuntu 16.04 может быть достаточно сложной, если вы начнете собирать программу из исходных кодов, но можно пойти другим путем. Мы воспользуемся утилитой ubuntu-make, которая все сделает за нас. Сначала установим ее:
sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make
$ sudo apt-get update
$ sudo apt-get install ubuntu-make
Теперь установка Visual Studio Ubuntu 16.04:
sudo umake ide visual-studio-code
После завершения установки вы можете найти программу в главном меню:
Главное окно программы выглядит вот так:
Теперь перейдем к самому главному - установка net core в ubuntu.
Установка Net Core Ubuntu
Установка Visual Code, это только пол пути, чтобы иметь возможность писать программы C# в Linux нам понадобиться Net Core. Естественно, этой программы нет в официальных репозиториях. Поэтому сначала добавляем PPA:
sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
$ sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
$ sudo apt-get update
Пытаемся установить:
sudo apt-get install dotnet-dev-1.0.0-preview1-002702
Но получаем ошибку:
Это происходит потому, что система пытается установить пакет dotnet-sharedframework, который зависит от библиотеки libicu52, которой нет в репозиториях Ubuntu 16.04 но не беда, исправим. Скачаем эту библиотеку из архива Ubuntu 14.04:
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu52_52.1-3ubuntu0.4_amd64.deb
sudo dpkg -i libicu52_52.1-3ubuntu0.4_amd64.deb
Пробуем еще раз, и на этот раз все работает:
sudo apt-get install dotnet-sharedframework-microsoft.netcore.app-1.0.0-rc2-3002702
sudo apt-get install dotnet-dev-1.0.0-preview1-002702
Проверяем корректность установки:
dotnet --version
Отлично, установка asp ubuntu 16.04 прошла успешно и вы можете начинать писать свои программы на C# в Linux. Но теперь нужно объединить фреймворк dotnet и Visual Code для более удобной работы.
Настройка Net Core
Вопреки нашим опасениям, у Net Core есть очень удобный инструмент, для управления проектами. Вы уже с ним знакомы. Это команда dotnet. Давайте создадим пустой проект. Для этого сначала создадим пустую папку:
mkdir nettest
$ cd nettest
Инициализируем проект:
dotnet new
Затем установим все зависимости:
dotnet restore
Ну и проверим как сработало, запустив нашу программу:
dotnet run
Вот код нашей программы в файле Program.cs:
Как видите, все работает, и работает правильно. Теперь давайте настроим Visual Studio для написания программ на C# в Linux.
Настройка Visual Code для написания программ NET
Просто открыть проект не получиться. Для того, чтобы все заработало нужно установить расширение C#. Для этого откройте среду Visual Code, нажмите Ctrl+E и наберите:
$ ext install C#
Выберите из списка расширение C# от Microsoft, затем начнется установка. После завершения установки нас попросят перезагрузить среду Visual Code ubuntu:
После перезагрузки у нас появилась подсветка синтаксиса. На вкладке отладка мы можем видеть, что установка Net Core Ubuntu 16.04 в Visual Code прошла успешно:
Если нажать зеленый треугольник, нам предложат настроить среду отладки:
Соглашаемся, и пойдет загрузка и настройка отладчика.
После завершения вы можете запустить свою программу и убедиться что все работает.
Выводы
Установка csharp Ubuntu 16.04 прошла успешно, и теперь вы можете писать C# программы на Linux. Было неожиданно, что Microsoft сделает это, но наконец таки это свершилось. Правда Microsoft в своем репертуаре, они собирают данные телеметрии, об выполняемых командах и их параметрах, обещают, что анонимно, но все же... Чтобы откключить такое поведение нужно установить переменную среды DOTNET_CLI_TELEMETRY_OPTOUT=1. Вот, собственно и все. Установка Net Core в Ubuntu 16.04 для Visual Code завершена. А вы будете использовать этот язык в Linux? Напишите в комментариях!
На 32-х разрядных системах не ставится, ибо нет соответствующих пакетов под данную разрядность ОС Linux
МелкоМягкий нашел как внедриться в линукс-сообщество )))
При попытке прописать sudo sh -c 'echo"deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' выдаёт следующее: sh: 1: echodeb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet/ trusty main: not found У меня Ubuntu 16.04. Подскажите как исправить.
sudo apt-get install dotnet-hostfxr-1.0.2
А можно аналогичную инструкцию для openSUSE? Ну хотя бы кратко.
прошу автора исправить инструкцию, так как она не для ubuntu 16.04 а для ubuntu 14.04, вот сайт https://www.microsoft.com/net/core#linuxubuntu тут правильная инструкция
Как же все это далеко от народа;)
Вот уже 2 часа ползую по Синаптику, ин-ту и т.п.
Родная МТС предлагает распечатку звонков в формате XML (
Граждане, чую Вы знаете всё
Какой программой в убунту посмотреть XML-документ без визуализации тегов
Т.е. не как в блокноте.
Если не затруднит)
Поправки: не Net, а .Net (с точкой перед словом Net), и не Visual Code, а Visual Studio Code.
Добрый день. Не подскажете какая версия dotnet сейчас актуальна? По вашей инструкции установить не получилось. Делал по мануалу с сайта Майкрософт. dotnet --version выдает версию 1.0.4.