Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Build errors of missing packages in Visual Studio Online (2015 version)

I'm getting the following message when I trigger a build on check-in to Visual Studio Online. Locally it compiles and deploys just fine.

packages\Microsoft.Net.Compilers.1.0.0\tools\Microsoft.CSharp.Core.targets (67, 5)

To be more precise, this is the problem being described.

The "Microsoft.CodeAnalysis.BuildTasks.Csc" task could not be loaded from the assembly C:\a\1\s\packages\Microsoft.Net.Compilers.1.0.0\build..\tools\Microsoft.Build.Tasks.CodeAnalysis.dll. Could not load file or assembly 'file:///C:\a\1\s\packages\Microsoft.Net.Compilers.1.0.0\tools\Microsoft.Build.Tasks.CodeAnalysis.dll' or one of its dependencies. The system cannot find the file specified. Confirm that the declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask.

So, evidently, I have some locally placed files making the compilation work on site (i.e. my machine) but those aren't deployed using check-in. I haven't put in any DLLs or such manually into my project. Everything that's there is either source code based or obtained with the package manager.

That poses the following issues.

  1. I don't know which exact files those are (error message in Visual Studio Online doesn't disclose that information and I can't reproduce it locally).
  2. I'm not sure how to forcingly push all the relevant files to the repository for the building agent to fetch (according ot my experience, it's done automagically).

The settings in the build step are as follows.

  • Solution: **\*.sln
  • MsBuild Arguments: /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\"
  • Platform:
  • Configuration:
  • Clean: off
  • Restore NuGet Packages: checked
  • Visual Studio Version: Visual Studio 2015
  • MsBuild Architecture: MSBuild x86
  • Record Project Details: checked
like image 791
Konrad Viltersten Avatar asked Jan 15 '16 10:01

Konrad Viltersten


2 Answers

This issue usually occurs when the nuget packages are checked in to Version Control. Delete the packages folder in Version Control, and make sure the "packages.config" file is checked in to Version Control. Then queue a new build.

like image 70
Eddie Chen - MSFT Avatar answered Nov 17 '22 22:11

Eddie Chen - MSFT


It turns out that NuGet packages were committed to the repository and breaking everything. Deleting the project\project\packages directory from the repo solved all build problems since NuGet fetches the packages automatically on build.

like image 3
mianimraniqbal Avatar answered Nov 17 '22 20:11

mianimraniqbal