Я выполняю команду во время AWS CodeBuild для создания лямбда-файла zip.
Команда выглядит следующим образом:
dotnet lambda package --framework netcoreapp2.1 -o ../../artifacts/Jobs.zip
Вот ошибка:
**A fatal error occurred, the required library libhostfxr.so could not be found.
If this is a self-contained application, that library should exist in [/root/.dotnet/tools/.store/amazon.lambda.tools/3.3.1/amazon.lambda.tools/3.3.1/tools/netcoreapp2.1/any/].
If this is a framework-dependent application, install the runtime in the default location [/usr/share/dotnet] or use the DOTNET_ROOT environment variable to specify the runtime location.
Makefile:28: recipe for target 'Jobs/artifacts/Jobs.zip' failed**
Because this is a container I have printed out the dotnet info:
.NET Core SDK (reflecting any global.json):
Version: 2.2.402
Commit: c7f2f96116
Runtime Environment:
OS Name: ubuntu
OS Version: 18.04
OS Platform: Linux
RID: ubuntu.18.04-x64
Base Path: /root/.dotnet/sdk/2.2.402/
Host (useful for support):
Version: 3.1.2
Commit: 916b5cba26
.NET Core SDKs installed:
2.2.402 [/root/.dotnet/sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.2.7 [/root/.dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.2.7 [/root/.dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.2 [/root/.dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.2.7 [/root/.dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.2 [/root/.dotnet/shared/Microsoft.NETCore.App]
Итак, проект в Visual Studio нацелен. NET Core 2.1
Эта проблема только началась около 10 дней go. Я смог go вернуться к более раннему коммиту, отправив sh его на GitHub, который пинает код, встроенный в AWS. Этот более ранний коммит, когда отправлено 2 недели, go был успешным, и я не увидел эту ошибку libhostfxr.so. В основном все, что я пу sh, теперь я получаю вышеуказанную ошибку. Во время исследования я обнаружил, что, поскольку я использую Контейнер, я могу использовать флаг
--self-contained=true and /p:PreserveCompilationContext=true
, чтобы я мог связывать все зависимости, но это тоже не сработало.
Не уверен, что еще попробовать на этом этапе. У кого-нибудь есть идеи? Целевая структура для этих лямбд является. NET core 2.1.