asp.net core 2.1 на arch linux не запускается - PullRequest
0 голосов
/ 05 июня 2018

Я установил последнюю версию ядра .net с помощью pacman в Arch Linux:

sudo pacman -S dotnet-sdk

Запуск dotnet --info показывает правильную версию:

Host (useful for support):
  Version: 2.1.0
  Commit:  caa7b7e2ba

.NET Core SDKs installed:
  2.1.0 [/opt/dotnet/sdk]
  2.1.300 [/opt/dotnet/sdk]

Я могузапускать консольные приложения, но когда я запускаю dotnet run в каталоге ASP.NET Core, возвращаем эту ошибку:

Не удалось найти какую-либо совместимую версию платформы. Указанная структура 'Microsoft.AspNetCore.App', версия' 2.1.0 'не найдена.

Почему, хотя версии, похоже, совпадают, она не запускается?

Подробнее:

ls /opt/dotnet/sdk/ возвращает:

2.1.300  NuGetFallbackFolder

Содержимое файла .csproj:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" />
  </ItemGroup>

</Project>

Ответы [ 5 ]

0 голосов
/ 20 июня 2018

Обновление всех пакетов решило проблему:

pacman -Syu

Включает в себя пакет dotnet-sdk 2.1.300-2, обновленный 2018-06-12 11:24 UTC: https://www.archlinux.org/packages/community/any/dotnet-sdk/

0 голосов
/ 13 июня 2018

У меня была похожая проблема при попытке установить глобальные инструменты.Создание символической ссылки работало для меня:

ln -s /opt/dotnet/ /usr/share/dotnet
0 голосов
/ 05 июня 2018

У меня нет правильного решения вашей проблемы, но, возможно, есть обходной путь.Я использую элементарную операционную систему, и .net core 2.1 работает просто отлично, но я заметил, что мой путь к метапакетам отличается от вашего:

.NET Core SDK (reflecting any global.json):
 Version:   2.1.300
 Commit:    adab45bf0c

Runtime Environment:
 OS Name:     elementary
 OS Version:  0.4.1
 OS Platform: Linux
 RID:         linux-x64
 Base Path:   /usr/share/dotnet/sdk/2.1.300/

Host (useful for support):
  Version: 2.1.0
  Commit:  caa7b7e2ba

.NET Core SDKs installed:
  2.0.0 [/usr/share/dotnet/sdk]
  2.1.300 [/usr/share/dotnet/sdk]

Вы можете попробовать скопировать метапакеты из папки установки /opt/dotnet/shared to /usr/share/dotnet/shared

У этого парня похожая проблема с использованием Fedora: https://github.com/dotnet/core-setup/issues/4022

0 голосов
/ 12 июня 2018

@ tura08 ответ неправильный, потому что .NET Core должен работать на Arch Linux , как и на любой другой системе Linux.

У меня возникла та же проблема, поэтому ятолько что сообщил об этом https://github.com/dotnet/core-setup/issues/4216 и, похоже, в пакете dotnet-sdk отсутствует aspnetcore-runtime-2.1 зависимость.Я написал письмо сопровождающему, поэтому надеюсь, что он скоро исправит пакет.

0 голосов
/ 05 июня 2018

.NET Core в настоящее время не поддерживается в Arch, поэтому нет никаких гарантий, что он будет работать вообще.В настоящее время поддерживаются следующие дистрибутивы в 64-битной среде:

  • Red Hat Enterprise Linux 7, 6
  • CentOS 7
  • Oracle Linux 7
  • Fedora 27
  • Debian 9, 8.7 или более поздние версии
  • Ubuntu 18.04, 17.10, 16.04, 14.04
  • Linux Mint 18, 17
  • openSUSE 42.3 или более поздняя версияверсии
  • SUSE Enterprise Linux (SLES) 12 с пакетом обновления 2 или более поздней версии
  • Alpine Linux 3.7 или более поздней версии

См. эту страницу длябольше информации.

Вы можете увидеть эти проблемы, связанные с Arch, в репозиториях dotnet:

https://github.com/dotnet/coreclr/issues/4409

https://github.com/dotnet/corefx/issues/19447

https://github.com/dotnet/core-setup/issues/3845

...