Я развертываю консольное приложение .Net core 2.2, используя автономное развертывание и используя некоторые сторонние библиотеки, такие как (log4net и Newtonsoft.Json).Приложение работает нормально в системе, в которой оно разработано, но не работает при развертывании в любой другой системе.Отображается следующая ошибка:
C:\Users\shubhamjain\source\repos\Collect\Collect\bin\Release\netcoreapp2.2\win-x64>Collect.exe
Ошибка: сборка, указанная в манифесте зависимостей приложения (Collect.deps.json), не найдена: package: 'Newtonsoft.Json', версия: '12 .0.2' путь: 'lib / netstandard1.3 / Newtonsoft.Json.dll'
Я пробовал следующие вещи:
- Изменениеверсия ядра .Net с 2.1 и 2.2
- , изменяющая версию Newtonsoft.Json с nuget
- Обновление visual studio 2019
Ничего не получалось, но когда я посмотрел нафайл («Collect.runtimeconfig.dev.json» в пути C:\Users\shubhamjain\source\repos\Collect\Collect\bin\Release\netcoreapp2.2\win-x64
) и измените shubhamjain
с именем пользователя развернутой системы, все работает нормально.
Теперь, что я наблюдаю, что Newtonsoft.Json
зависит от файла (.runtimeconfig.dev.json
), и для того, чтобы он работал, мне нужно изменить имя пользователя в этом файле.
Есть ли способ решить это автоматически?
Collect.runtimeconfig.dev.json
:
{
"runtimeOptions": {
"additionalProbingPaths": [
"C:\\Users\\shubhamjain\\.dotnet\\store\\|arch|\\|tfm|",
"C:\\Users\\shubhamjain\\.nuget\\packages",
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" ]
}
}