On Prem, Can't compile BPMs

Since last october / early november was are experiencing issues compiling BPM’s. It is not able to find any of the system .net references or netstandard 2.0 / 2.1. We are running 2024.2.28 which utilized .net core 8.0 and we have the following .net installed

.NET SDK:
Version: 8.0.411
Workload version: 8.0.400-manifests.2ba2f75d
MSBuild version: 17.11.31+933b72e36

Runtime Environment:
OS Name: Windows
OS Version: 10.0.17763
OS Platform: Windows
RID: win-x64
Base Path: C:\Program Files\dotnet\sdk\8.0.411\

.NET workloads installed:
Configured to use loose manifests when installing new manifests.
There are no installed workloads to display.

Host:
Version: 8.0.21
Architecture: x64

.NET SDKs installed:
8.0.411 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 8.0.17 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.21 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 8.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.21 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 8.0.17 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 8.0.21 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
x86 [C:\Program Files (x86)\dotnet]
registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

What version of Windows Server are you on?
There’s a known thing where you need to use the VS build tools to install the 4.8 SDK.

we are running windows 2019 and .net 4.8 is installed even though when we go to re-install it, its not finding it. but in the registry of the server it shows 4.8. This was working since we built the servers early this year. it just all of a sudden broke in last october / early november.

Do you have the SDK installed? 2019 has the runtime installed out of the box. But not the SDK.

How does the error look like?

I installed the sdk for .net core 8.0 but not for 4.8 only the runtime.

4.8 is needed too. The full error from the BPM would also be helpful.

These are the errors we are getting.

Looks like the same as this, just for .NET 8

Search for empty folder in the SDK folders you have locally

2 Likes

I have and all the files are there. That was what Epicor Support sent me. One question i have to support is, is it on the server or the client PC that is trying to check syntex and compile the BPM?

Oh, you are doing it in browser, then it is server, not client as previous thread.

We are not browser yet, we are doing it though the smart client. One thing i did notice is Epicor seems to only use Windows Desktop .net core 8.0.21 and any other version, the method directive window ill not open. I also noticed that i don’t have aspnetcore 8.0.21 only 8.0.22, in their documentation, it never states a specific version only .net 8.0 and 4.8

.NET is backwards compatible so any 8.0.x will work. We run the latest 8.0 and everything works fine.

well, screenshot with errors looks like browser for me

You may be using the client, but you are using the BPM designer, which is browser based.

Your problem is on the server.

I get the same error through the classic screen of method directive when i save. would that be the client PC still?

When you save it may be on server, show the exception.
The link I provided was inside editor, when custom code was edited. That happened on the client.

this is the sever side exception through the classic Method directive screen.

There is at least one compilation error.
CustomizationFactory.cs(2,14): error CS0234: The type or namespace name ‘Collections’ does not exist in the namespace ‘System’ (are you missing an assembly reference?)
GetNewABCCode.CommonTypes.cs(3,14): error CS0234: The type or namespace name ‘Collections’ does not exist in the namespace ‘System’ (are you missing an assembly reference?)
GetNewABCCode.Post.AutoCheck.Designer.cs(15,14): error CS0234: The type or namespace name ‘Collections’ does not exist in the namespace ‘System’ (are you missing an assembly reference?)
GetNewABCCode.Post.AutoCheck.cs(15,14): error CS0234: The type or namespace name ‘Collections’ does not exist in the namespace ‘System’ (are you missing an assembly reference?)
GetNewABCCode.CommonTypes.cs(13,46): error CS0012: The type ‘Object’ is defined in an assembly that is not referenced. You must add a reference to assembly ‘System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’.
GetNewABCCode.CommonTypes.cs(45,66): error CS0012: The type ‘Object’ is defined in an assembly that is not referenced. You must add a reference to assembly ‘System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’.
GetNewABCCode.CommonTypes.cs(30,55): error CS0012: The type ‘Object’ is defined in an assembly that is not referenced. You must add a reference to assembly ‘System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’.
CustomizationAdapter.cs(9,53): error CS0012: The type ‘Object’ is defined in an assembly that is not referenced. You must add a reference to assembly ‘System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’.
GetNewABCCode.CommonTypes.cs(17,16): error CS0012: The type ‘Object’ is defined in an assembly that is not referenced. You must add a reference to assembly ‘System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’.
GetNewABCCode.CommonTypes.cs(17,16): error CS0518: Predefined type ‘System.Object’ is not defined or imported
GetNewABCCode.CommonTypes.cs(21,9): error CS0518: Predefined type ‘System.Void’ is not defined or imported

So, check your server, for some reason it does not see .NET 8 SDK installed there.

Did you look at what I posted about installing the SDK?