Share via


Alteração de comportamento de PublishDepsFilePath

A propriedade MSBuild PublishDepsFilePath está vazia para aplicativos de arquivo único. Além disso, para aplicativos que não sejam de arquivo único, o arquivo deps.json pode ser copiado para o diretório de saída somente mais tarde no build.

Versão introduzida

5,0

Descrição das alterações

Em versões anteriores do .NET, a propriedade MSBuild PublishDepsFilePath é o caminho para o arquivo deps.json do aplicativo no diretório de saída para aplicativos que não sejam de arquivo único e um caminho no diretório intermediário para aplicativos de arquivo único.

A partir do .NET 5, PublishDepsFilePath está vazio para aplicativos de arquivo único e uma nova propriedade IntermediateDepsFilePath especifica o local de deps.json no diretório intermediário. Além disso, para aplicativos que não são de arquivo único, o arquivo deps.json pode ser copiado para o diretório de saída (ou seja, o caminho especificado por PublishDepsFilePath) somente mais tarde no build.

Motivo da alteração

Essa alteração foi feita por alguns motivos:

  • Devido a uma refatoração da lógica de publicação para dar suporte a aplicativos de arquivo único aprimorados no .NET 5.

  • Em aplicativos de arquivo único, para ajudar a proteger contra destinos que tentam reescrever o arquivo deps.json depois que deps.json já tiver sido empacotado, dessa forma, silenciosamente, não afetando o aplicativo. Por esse motivo, PublishDepsFilePath está vazio para aplicativos de arquivo único.

Os destinos que reescrevem o arquivo deps.json geralmente devem fazê-lo usando a propriedade IntermediateDepsFilePath.

APIs afetadas

N/D