.Net部署项目的检测到的依赖关系神奇地排除在外

Bri*_*anH 5 .net msbuild dependencies deployment-project

我有一个Visual Studio 2005 .NET解决方案,它有20多个子项目,包括一个部署项目.VS2005 .NET部署项目具有许多检测到的依赖关系,已手动排除并手动添加更正值.

但有时,这些检测到的依赖关系会被神奇地排除在外,这会在构建时触发警告:警告:两个或多个对象具有相同的目标位置('[targetdir] \')

导致检测到的依赖关系被排除的触发器是什么?部署解决方案是否可以将其警告视为错误,以便每晚构建不会继续?

Kon*_*nos 0

好吧,这比其他任何事情都更像是一种黑客:)

通常在 Visual Studio 下你有 2 个选择:

a) 排除重复的 DLL

b) 将重复的 DLL 的Condition属性设置为不同的值。

问题是,使用这两种方法,您仍然会让它们神奇地重置并像以前一样收到警告。

对我们有用的是以下解决方案:

a) 转到您的安装项目并创建一个自定义文件夹

b) 将自定义文件夹的DefaultLocation属性设置为与您需要放置这些 DLL 的位置相同。即对于 ASP.NET 应用程序,该值为 [TARGETDIR]\bin

c) 然后将所有重复的 dll 拖放到此文件夹中,现在您应该不会收到任何警告。

就是这样。您应该不会收到有关这些 dll 的警告,如果您有任何额外的,只需将它们拖到此文件夹中即可。

希望这可以帮助。

——康斯坦丁诺斯