Quantcast
Channel: MSBuild forum
Viewing all articles
Browse latest Browse all 2763

MSBuild's referencePath option not taken into account for websites

$
0
0

Hi,

When building a website (not a web application) with MSBuild, a metaproj file is created that contains a.o. the list of all dependencies. My understanding is that the "xxx.dll.refresh" files available in the bin folder are used to create this list (at least for all indirect dependencies added explicitly/manually into the bin folder for publishing purpose - I am not at all familiar with this metaproj file).

Next, MSBuild copy all assemblies into the TargetDir (MyWebSite\bin) and run the ASPnet_compiler

Unfortunately, on our TFS Build Server, the dependencies are not located in the same folder as on the development workstations (and they are not in the GAC either). The purpose is to be able to compile (and unit test) against various versions of those dependencies without changing anything in the csproj, etc... (We manage this using the "referencePath" option of MSBuild to specify where MSBuild must look for referenced assemblies).

The problem is that, apparently, MSBuild does not use the "referencePath"  to find the assemblies listed in the metaproj (or to create this metaproj) :(

Is this correct or am I misunderstanding ? Any trick to force the metaproj to contains path to the "server"'s location of the dependencies (i.e.: the "referencePath") instead of the path found in the ".refresh" files ?


Valéry Letroye

PS.: actually, even if the dependencies are located at the same place on the Build server as on the workstations, it won't work because the .refresh files contains relative paths... and the build location on the Build Server depends on the Build Agents' name, etc...

Viewing all articles
Browse latest Browse all 2763

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>