Dela via


Beteendeändring i PublishDepsFilePath

Egenskapen PublishDepsFilePath MSBuild är tom för enfilsprogram. Dessutom kan det hända att den deps.json filen inte kopieras till utdatakatalogen förrän senare i versionen för program som inte är en enda fil.

Version introducerad

5,0

Ändra beskrivning

I tidigare .NET-versioner PublishDepsFilePath är egenskapen MSBuild sökvägen till appens deps.json-fil i utdatakatalogen för icke-enfilsprogram och en sökväg i mellankatalogen för appar med en fil.

Från och med .NET 5 PublishDepsFilePath är det tomt för enfilsprogram och en ny IntermediateDepsFilePath egenskap anger deps.json plats i den mellanliggande katalogen. Dessutom kan det hända att deps.json-filen inte kopieras till utdatakatalogen (d.v.s. sökvägen som anges av PublishDepsFilePath) förrän senare i bygget.

Orsak till ändringen

Denna ändring gjordes av ett par skäl:

  • På grund av en refaktorisering av publiceringslogik för att stödja förbättrade appar med en fil i .NET 5.

  • För att skydda mot mål som försöker skriva om deps.json-filen efter att deps.json redan har paketerats i appar med en fil, påverkar det inte appen i tysthet. Därför PublishDepsFilePath är den tom för enfilsprogram.

Mål som skriver om deps.json-filen bör vanligtvis göra det med hjälp av IntermediateDepsFilePath egenskapen .

Berörda API:er

Ej tillämpligt