2017-09-08 5 views
1

Je migre mon projet (https://github.com/MarkKhromov/The-Log) vers .NET Standard 2.0 et la construction de mon apporleur est interrompue. Comment je peux réparer ça?Basée sur l'expert .NET Standard 2.0

Ma solution contient:

  • .NET projet standard
  • Console projet d'application
  • projet
  • bibliothèque de classe (essais)

J'ai déjà essayé écrit:

dotnet: 2.0.0 script: - dotnet restore - dotnet construire

ou

  • dotnet construction TheLog/TheLog.csproj -c de netstandard2.0 de sortie
  • msbuild TheLog.Demos/TheLog.Demos.csproj/p: = Configuration de sortie
  • msbuild TheLog.Tests/TheLog.Tests.csproj/p: configuration = Debug
  • TheLog.Tests nunit-console/TheLog.Tests.csproj

Mais chaque fois que j'ai des erreurs

Répondre

1

Vous devez modifier la configuration de votre application dans l'image VS 2017 afin de créer des bibliothèques .NET Standard et utiliser l'outil dotnet pour les projets csproj.

+0

La phase de construction intégrée 'msbuild' d'AppVeyor fonctionne correctement avec les projets .NET Standard 2.0 sur' Visual Studio 2017'. Cependant, oui, l'exécution du test doit être effectuée avec l'outil 'dotnet'. – ilyaf

+0

J'ai regardé le journal de construction de votre dernier commit sur master et il utilisait msbuild 14 donc je me suis dit que vous n'aviez pas encore sélectionné l'image 2017. btw cela n'a pas d'importance si l'exécution du test est effectuée via msbuild ou 'dotnet', les deux appellent la cible msbuild' VSTest'. –

1

Nécessaire pour modifier deux paramètres sur AppVeyor.
1. Changement Build worker image à Visual Studio 2017 - Configuration de l'environnent
2. Ajouter "dotnet restauration" commande dans Before build script comme CMD - Construire la mise en

Je l'ai confirmé sur un nouveau projet vide/solution activée. NET Standard 2.0 ou .NET Core 2.