#windows #visual-studio #cordova #ionic-framework #uwp
#Windows #visual-studio #кордова #ionic-framework #uwp
Вопрос:
Я создаю приложение с Ionic / Cordova, которое должно работать в Windows 10. Приложение работает хорошо, когда я собираю его из Visual Studio в конфигурации «debug» и «x64». Но когда я хочу создать пакет приложений из «Project»> «Store»> «Create App Package», он завершается с ошибкой :
Error MSB6006 "ilc.exe" exited with code 1200
Копая глубже, я могу найти на вкладке «Вывод» ошибку :
System.InvalidOperationException: Le nom de propriété "MSBuildToolsPath" est réservé
Это на французском, я не могу найти эквивалент на английском, похоже, это означает «Имя свойства MSBuildToolsPath зарезервировано»
Завершенное сообщение об ошибке :
Task "LoggerBasedExecTask"
1> Task Parameter:Application=C:Program Files (x86)MSBuild15.0.Net.NetNative15.0.24211x86ilcilc.exe
1> Task Parameter:Parameters=@"buildwindowsbldilc.CordovaApp.Windows10.rsp"
1> Task Parameter:MessageLog=C:QUALIOSSourcesQualiosMobile_LWQualiosplatformswindowsbuildwindowsbldilcilclog.csv
1> Task Parameter:UseCommandProcessor=False
1> C:Program Files (x86)MSBuild15.0.Net.NetNative15.0.24211x86ilcilc.exe @"buildwindowsbldilc.CordovaApp.Windows10.rsp" "/logger:CsvLogger;3472;3460"
1> System.InvalidOperationException: Le nom de propriété "MSBuildToolsPath" est réservé.
1> à Microsoft.Build.Shared.ErrorUtilities.ThrowInvalidOperation(String resourceName, Object[] args)
1> à Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInvalidOperation(Boolean condition, String resourceName, Object arg0)
1> à Microsoft.Build.Construction.ProjectPropertyElement.CreateDisconnected(String name, ProjectRootElement containingProject)
1> à Microsoft.Build.Construction.ProjectPropertyGroupElement.AddProperty(String name, String unevaluatedValue)
1> à Microsoft.Build.Construction.ProjectRootElement.AddProperty(String name, String value)
1> à ilc.Program.AddPropertiesToBlockEnvironmentVariables(ProjectRootElement rootElement)
1> à ilc.Program.PrepareAndRunMsbuildTargets(Package package, String intermediatesFolderName, Boolean isAppX)
1> à ilc.Program.RunIlc(String intermediatesFolderName)
1> à ilc.Program.InnerMain(String[] args)
1> à ilc.Program.Main(String[] args)
1> ILC.exe has experienced an unexpected error. Please visit http://go.microsoft.com/fwlink/?LinkID=613098 for a list of known issues.
1>
1> C:Program Files (x86)MSBuild15.0.Net.NetNative15.0.24211Microsoft.NetNative.targets(640,5): error MSB6006: "ilc.exe" exited with code 1200.
1> Output Property: _IlcExitCode=1200
1> Done executing task "LoggerBasedExecTask" -- FAILED
Ответ №1:
В большинстве случаев эти ошибки исправляются путем обновления до последней версии .NET Native (Microsoft.NETCore.Пакет UniversalWindowsPlatform).
Можете ли вы попробовать обновиться до последней версии (6.2.8)? https://github.com/Microsoft/dotnet/blob/master/releases/UWP/net-native2.2/README.md
Комментарии:
1. Я попытался запустить установочный пакет Microsoft.NETCore. UniversalWindowsPlatform -версия 6.2.8, но я получаю Install-Package: Не удалось установить пакет ‘Microsoft.NETCore.Jit 1.0.3’. Вы пытаетесь установить этот пакет в проект, предназначенный для «UAP, Version =v10.0.10240», но пакет не содержит ссылок на сборки или файлов содержимого, которые совместимы с этой платформой. За дополнительной информацией обращайтесь к автору пакета
2. Какие версии VS, .Net и SDK вы используете?
3. VS: 15.3.5 .Net: 4.7.2 SDK для Windows 10 (10.0.15063.0)
4. Я не думаю, что я должен использовать Microsoft.NETCore. UniversalWindowsPlatform с cordova, если я ищу установленные nugets, он сообщает «пакет не найден». У моего коллеги тот же проект, что и у меня, и он может создавать в release
Ответ №2:
Наконец-то найдено решение!
Мне просто пришлось установить глобально Windows-build-tools, чтобы заставить его работать. Кордова, по-видимому, нуждается в этом
npm install -g windows-build-tools