Struggling with getting a Xamarin project with .NET Standard project to build

fredrikhaglund
Thu, 09 Nov 2017 11:12:42 +0000
Builds

Bitrise Build Issue Report template

Description of the issue

I have a Xamarin-project that build an iOS and an Android app. The core project today is PCL and it builds just fine on Bitrise.

When I change the core project to a .NET Standard project (2.0) it compiles and runs locally on both Visual Studio on WIndows and Visual Studio on Mac. But building with Bitrise fails.

Visual Studio for Mac Installer appears to install dot net core 2.0 component automatically when you do a clean install today but as far as I can see dot net core is missing in the VM - and that breaks the build.

If you get the xamarin-archive step to build your solution using the workaround you run into the next issue. The NUnit test runner fails because it is using an outdated version of nunit3-console.exe that does not support dotnet standard projects. I think nunit3-console.exe also a part that is installed into osx-vs4mac-stable VM and you should refresh it to use the latest version.

Workaraound

To verify that this is the case I added a script step and downloaded and run “dotnet-install.sh --channel 2.0”. Just to be safe I also throw in a “dotnet restore” but that should not be needed when running core 2.

(The existing step to install dotnet core that you can find through the workflow editor is broken and should be removed since it is not maintained)

Environment

Stack: osx-vs4mac-stable (and beta)

Build Step: xamarin-archive (1.5.0)
Build Step: steps-nunit-runner (1.4.0)

Reproducibility

Rebuild does NOT help. Same result every time.

Adding/removing cache has no effect.

Problem started when introducing .NET Standard projects into solution.

Build log

dropbox.com

Dropbox - Error - Simplify your life

27 posts - 9 participants