diff --git a/src/SourceGenerators/Uno.UI.Tasks/Content/Uno.UI.Tasks.targets b/src/SourceGenerators/Uno.UI.Tasks/Content/Uno.UI.Tasks.targets
index 52b0b61f5977..905d43181c3a 100644
--- a/src/SourceGenerators/Uno.UI.Tasks/Content/Uno.UI.Tasks.targets
+++ b/src/SourceGenerators/Uno.UI.Tasks/Content/Uno.UI.Tasks.targets
@@ -204,13 +204,17 @@
+
+ <_UnoUpriSubstitutionsFile>$(IntermediateOutputPath)\Substitutions\UpriResources.Substitutions.xml
+
+
+ OutputFile="$(_UnoUpriSubstitutionsFile)" />
-
+
diff --git a/src/SourceGenerators/Uno.UI.Tasks/ResourcesGenerator/UpriSubstitutionsGeneratorTask.cs b/src/SourceGenerators/Uno.UI.Tasks/ResourcesGenerator/UpriSubstitutionsGeneratorTask.cs
index e3404be4f55d..c0acf4f974ab 100644
--- a/src/SourceGenerators/Uno.UI.Tasks/ResourcesGenerator/UpriSubstitutionsGeneratorTask.cs
+++ b/src/SourceGenerators/Uno.UI.Tasks/ResourcesGenerator/UpriSubstitutionsGeneratorTask.cs
@@ -29,7 +29,7 @@ public override bool Execute()
{
// Debugger.Launch();
- if (!string.IsNullOrEmpty(AssemblyName) && Resources != null && !string.IsNullOrEmpty(OutputFile))
+ if (!string.IsNullOrEmpty(AssemblyName) && Resources?.Length > 0 && !string.IsNullOrEmpty(OutputFile))
{
var xml = new XmlDocument();