如何更新/重新安装NuGet中存储的可执行文件

时间:2016-06-20 14:45:52

标签: nuget

我想使用NuGet来避免向git存储库添加第三方可执行文件。

我有一个NuGet包,其可执行文件已发布到我们的NuGet源代码中。包装内容:

content\SetupFiles\bigexecutable.exe

我已将NuGet引用添加到我想要使用可执行文件的项目中。它正确地添加了

SetupFiles\bigexecutable.exe 
在NuGet包安装期间

到项目目录。但是,如果我从项目目录中删除该文件,则在构建期间不会替换该文件。

NuGet是否有可能在构建之前验证包内容是否存在,并且如果缺少某些内容则重新安装包?

1 个答案:

答案 0 :(得分:1)

您的.exe正在添加到项目中,因为您将其包含在Content目录中。 NuGet不会将项目恢复到项目中。它只会将项目恢复到packages目录中。

另一种方法是创建一个工具NuGet包,其中.exe没有添加到项目中,但可以在相对于解决方案目录的tools目录中找到。

NUnit.ConsoleRunner是此类NuGet包的一个示例,其中包含tools目录中的所有.exe文件。使用tools目录不会导致NuGet将任何文件添加到项目中。