【发布时间】:2014-06-17 15:08:42
【问题描述】:
我们有一个引用类库项目(项目 A)的 Visual Studio 包(VS 包)。项目 A 又引用另一个类库项目(项目 B)。
所以依赖结构是这样的:VS Package > Project A > Project B
所有项目都存在于同一个解决方案中,并且依赖项已设置为正确的项目引用。
如果我在 Visual Studio 中构建包并查看 bin/Debug 文件夹,所有必要的程序集都在那里,包括项目 B。但是,在部署包时,只有项目 A 的程序集存在,而项目 B 的程序集丢失。如何告诉visual studio在包中包含Project B的间接依赖?
This MSDN 文档建议“默认情况下,在多项目解决方案中,如果输出到 VSIX 包的项目包含对同一解决方案中另一个项目的引用,则它包含该项目的依赖项。”
但我发现情况并非如此。
我的问题与this one 非常相似,只是我遇到了主要项目程序集而不是本地化附属程序集的问题。其他帖子中的答案对我不起作用,因为它似乎只适用于附属程序集。
我可以指定其他一些输出组来指示包也包含间接依赖项吗?
感谢收看。
【问题讨论】:
-
我无法重现这个。您确定 VSPackage -> ProjectA 和 ProjectA -> ProjectB 存在源级依赖关系(即 ProjectA 中的类型使用 ProjectB 中的类型)?
-
@AaronMarten 感谢您的回复。是的,代码中存在源级别的依赖关系。删除任何一个项目引用都会导致大量构建错误,无法再找到引用的类。我创建了一个简单的解决方案来展示我的问题,可以下载HERE
标签: visual-studio-2010 vsx vsix vspackage