When I compile 'DotNetNuke.Library' project using Visual Studio 2019 through the option in menu 'Build-> Build 'DotNetNuke.Library' there are no errors. The problem that I have is that the out library 'DotNetnuke.dll has version 0.0.0.0 instead of v9.3.0. This technique works for previous DNN versions, but not for DNNv9.3+.
I also fallowed steps from this tutorial https://github.com/dnnsof...lop/.github/BUILD.md , but I got lot's of other errors.
I'm missing something obvious, someone can help me?
The build process has changed a lot since 9.3.0, so it will depend somewhat on what version you're building against. For the latest version (since 9.5.0), you can run ./build.ps1 --target=CreateSettings which will generate a setting.local.json file. In that file, version will be set to "auto", which will use information for the Git repository and branch to determine the version. You can change this to be a specific version (e.g. "9.9.1"). After that's set, ./build.ps1 will do a full build and produce packages in the Artifacts folder that you can use to install a site.
./build.ps1 --target=CreateSettings
setting.local.json
"auto"
"9.9.1"
./build.ps1
For older versions I believe you'll want to add version info to SolutionInfo.cs. There's also an AssemblyStatus attribute in DNN Platform/Library/Properties/AssemblyInfo.cs that you may want to change.
SolutionInfo.cs
AssemblyStatus
DNN Platform/Library/Properties/AssemblyInfo.cs
Hope it helps,
Thank you for the detailed answer that put me on the right track!
If someone will get error message like "Could not download NuGet.exe" after the command "./build.ps1 --target=CreateSettings", please make sure that PowerShell is using correct encryption. For me following code snippet did the trick.
try { # Set TLS 1.2 (3072), then TLS 1.1 (768), then TLS 1.0 (192), finally SSL 3.0 (48) # Use integers because the enumeration values for TLS 1.2 and TLS 1.1 won't # exist in .NET 4.0, even though they are addressable if .NET 4.5+ is # installed (.NET 4.5 is an in-place upgrade). [System.Net.ServicePointManager]::SecurityProtocol = 3072 -bor 768 -bor 192 -bor 48 } catch { Write-Output 'Unable to set PowerShell to use TLS 1.2 and TLS 1.1 due to old .NET Framework installed. If you see underlying connection closed or trust errors, you may need to upgrade to .NET Framework 4.5+ and PowerShell v3' }
That I put into the "build.ps1" file, right after line: Write-Host "Preparing to run build script..."
These Forums are dedicated to the discussion of DNN Platform.
For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:
Awesome! Simply post in the forums using the link below and we'll get you started.