我想使用NuGet来避免向git存储库添加第三方可执行文件。
我有一个NuGet包,其可执行文件已发布到我们的NuGet源代码中。包装内容:
content\SetupFiles\bigexecutable.exe
我已将NuGet引用添加到我想要使用可执行文件的项目中。它正确地添加了
SetupFiles\bigexecutable.exe
在NuGet包安装期间到项目目录。但是,如果我从项目目录中删除该文件,则在构建期间不会替换该文件。
NuGet是否有可能在构建之前验证包内容是否存在,并且如果缺少某些内容则重新安装包?
答案 0 :(得分:1)
您的.exe正在添加到项目中,因为您将其包含在Content
目录中。 NuGet不会将项目恢复到项目中。它只会将项目恢复到packages目录中。
另一种方法是创建一个工具NuGet包,其中.exe没有添加到项目中,但可以在相对于解决方案目录的tools
目录中找到。
NUnit.ConsoleRunner是此类NuGet包的一个示例,其中包含tools
目录中的所有.exe文件。使用tools目录不会导致NuGet将任何文件添加到项目中。