unoplatform / uno

Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported.
https://platform.uno
Apache License 2.0
8.76k stars 706 forks source link

WinAppSdk + Single Project *.csproj : Can't command line build because of `GenerateSplashAssets_... task failed unexpectedly` #17897

Closed baskren closed 1 day ago

baskren commented 1 month ago

Current behavior

When following the documented process to Build a signed package app the [Build the app on the command line with the following command:] step produces the following build error:

click to expand build error ```text C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: The "GenerateSplashAssets_0ec1242fee84cbb93fe2e5d1674bb3173f67ccba" task failed unexpectedly. [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: System.TypeInitializationException: The type initializer for 'SkiaSharp.SKImageInfo' threw an exception. ---> System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B) [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at SkiaSharp.SkiaApi.sk_colortype_get_default_8888() [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at SkiaSharp.SKImageInfo..cctor() [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: --- End of inner exception stack trace --- [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at Svg.Skia.SKSvgSettings..ctor() in /_/src/Svg.Skia/SKSvgSettings.cs:line 22 [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at Svg.Skia.SKSvg..ctor() in /_/src/Svg.Skia/SKSvg.Model.cs:line 55 [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at Uno.Resizetizer.SkiaSharpSvgTools..ctor(String filename, Nullable`1 baseSize, Nullable`1 backgroundColor, Nullable`1 tintColor, ILogger logger) [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetF ramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at Uno.Resizetizer.SkiaSharpTools.Create(Boolean isVector, String filename, Nullable`1 baseSize, Nullable`1 backgroundColor, Nullable`1 tintColor, ILogger logger) [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas .csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at Uno.Resizetizer.SkiaSharpAppIconTools..ctor(ResizeImageInfo info, ILogger logger) [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at Uno.Resizetizer.GenerateSplashAssets_0ec1242fee84cbb93fe2e5d1674bb3173f67ccba.Execute() [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] C:\Users\ben\.nuget\packages\uno.resizetizer\1.5.2\build\Uno.Resizetizer.windows.skia.targets(36,3): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext() [C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj::TargetFramework=net8.0-windows10.0.19041] Done Building Project "C:\Users\ben\Development\AWC\HeightsAndAreas\HeightsAndAreas\HeightsAndAreas.csproj" (default targets) -- FAILED. Build FAILED. ```

Notes:

Expected behavior

the documented process to Build a signed package app can be completed successfully

How to reproduce it (as minimally and precisely as possible)

Workaround

None. The VisualStudio 2022 method of right clicking on the app project, selecting Package and Publish / Create App Packages no longer works as well.

  1. Architecture list no longer allows selecting of anything but Neutral
  2. After clicking on [Create], the following error appears:
>C:\Users\ben\Development\AWC\HeightsAndAreas.WinUI\HeightsAndAreas\HeightsAndAreas.csproj : error MSB4057: The target "_GenerateAppxPackage" does not exist in the project.

Works on UWP/WinUI

No

Environment

Uno.WinUI / Uno.WinUI.WebAssembly / Uno.WinUI.Skia

NuGet package version(s)

5.3.96 and 5.3.90

Affected platforms

Windows (WinAppSDK)

IDE

Visual Studio 2022

IDE version

Microsoft Visual Studio Community 2022 (ARM 64-bit) - Current Version 17.10.4

Relevant plugins

No response

Anything else we need to know?

No response

jeromelaban commented 2 weeks ago

Thanks for the report. Could you provide a binlog of the build? Just before running the build, can you delete the nuget package cache folder for all uno.resizetizer versions?

baskren commented 1 week ago

@jeromelaban: My apologies for taking so long. Been on the road and I have not had the time to focus on this since you responded. Thank you for your patience.

binlog results from VisualStudio Package and Publish : PublishTestApp_Release_AnyCPU_net8.0-windows10.0.19041_DesignTimeBuild_2024-09-03T12_05_53.2891970-04_00.zip

binlog result from Platform.Uno's Build a signed packaged app: msbuild.binlog.zip

Here is the project used to generate the above binlog files: https://github.com/baskren/PublishTestApp

agneszitte commented 1 day ago

@Darsh0307 if you can test that the images are good and that it works in VS and for other platforms, please If you need more information to test for this issue, please ask @jeromelaban