Nuget包init.ps1脚本和PackageReference修改

时间:2019-07-05 08:45:44

标签: powershell nuget packagereference

我希望在“ copy local = false”模式下在我的程序包中引用dll。换句话说,我不希望我的程序包附带的dll在构建后被复制到输出目录中。

在“ packages.config”方案中可以完成此操作的方法是在tools / install.ps1文件中包含以下脚本。

param($installPath, $toolsPath, $package, $project)
$asms = $package.AssemblyReferences | %{$_.Name} 
foreach ($reference in $project.Object.References) 
{
    if ($asms -contains $reference.Name + ".dll") 
    {
        $reference.CopyLocal = $false;
    }
}

我知道具有PackageReference功能的最新Nuget版本仅使用init.ps1脚本。但是我没有任何线索,我该写什么脚本。

我也知道该软件包的用户可以添加...

<ExcludeAssets>Runtime</ExcludeAssets>

要做到这一点。但是,作为软件包的作者,我真的很想执行这种行为。那么可以在脚本中添加它吗?

0 个答案:

没有答案