Browse Source

Merge pull request #87829 from nongvantinh/fix-86591

Throw exception when solution file is missing during exporting
Rémi Verschelde 1 year ago
parent
commit
2fb6f7f31a
1 changed files with 7 additions and 0 deletions
  1. 7 0
      modules/mono/editor/GodotTools/GodotTools/Export/ExportPlugin.cs

+ 7 - 0
modules/mono/editor/GodotTools/GodotTools/Export/ExportPlugin.cs

@@ -90,6 +90,13 @@ namespace GodotTools.Export
                     $"Resource of type {Internal.CSharpLanguageType} has an invalid file extension: {path}",
                     nameof(path));
 
+            if (!ProjectContainsDotNet())
+            {
+                _maybeLastExportError = $"This project contains C# files but no solution file was found at the following path: {GodotSharpDirs.ProjectSlnPath}\n" +
+                    "A solution file is required for projects with C# files. Please ensure that the solution file exists in the specified location and try again.";
+                throw new InvalidOperationException($"{path} is a C# file but no solution file exists.");
+            }
+
             // TODO: What if the source file is not part of the game's C# project?
 
             bool includeScriptsContent = (bool)GetOption("dotnet/include_scripts_content");