dotnet publish: specify RuntimeIdentifier
Ever came across this error on publishing a dotnet project that includes libs of your own:
error NETSDK1097: It is not supported to publish an application to a single-file without specifying a RuntimeIdentifier. You must either specify a RuntimeIdentifier or set PublishSingleFile to false.
E.g. using urho.net with this vs-code setup:
"publish",
"-c","Release",
"-r","linux-x64",
"--self-contained","true",
"/property:PublishFlavor=linux-x64",
"/property:PublishSingleFile=true",
"/property:PublishTrimmed=true",
"/property:DefineConstants=_DESKTOP_PUBLISHED_BINARY_",
"${workspaceFolder}/${workspaceFolderBasename}.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
Adding this to the referenced project's csproj fixed the issue:
<PropertyGroup>
<RuntimeIdentifiers>win-x64;osx-x64;linux-x64</RuntimeIdentifiers>
</PropertyGroup>
I'm quite sure the problem is that I had created the subprojects as console-application and not as library and that this is actually the problem....
Btw, found a hint on how to handle this here