我们有一个引用类库项目(项目A)的visual studio软件包(VS Package)。项目A又引用另一个类库项目(项目B)。VSIX软件包不包含引用的项目依赖关系
所以依存结构是这样的:VS包装>项目A>项目B
相同的解决方案内部存在的所有项目和依赖已设置为正确的项目引用。
如果我在Visual Studio中构建包并在bin/Debug文件夹中查找,那么所有必要的程序集都包含在项目B中。但是,在部署包时,只有项目A的组件存在,项目B缺失。如何让Visual Studio在项目包中包含项目B的间接依赖关系?
This MSDN文档建议:“默认情况下,在多项目解决方案中,如果输出到VSIX软件包的项目包含对同一解决方案中的另一个项目的引用,则它包括该项目的依赖项。
但是我发现情况根本就不是这样。
我的问题与this one非常相似,只是我在主项目组件而不是定位卫星组件方面遇到了问题。在这篇文章中的答案对我来说不起作用,因为它似乎只适用于卫星程序集。
是否还有一些其他输出组可以指定将包引导为包含间接依赖关系?
感谢您的期待。
我无法瑞普这一点。您是否确定VSPackage - > ProjectA和ProjectA - > ProjectB存在源级别依赖关系(即,ProjectA中的类型使用ProjectB中的类型)? –
@AaronMarten感谢您的回复。是的,代码中存在源代码级别的依赖关系。删除任何一个项目引用会导致大量的构建错误,其中不能再找到所引用的类。我已经创建了一个简单的解决方案,展示了我的问题,它可以下载[这里](http://www.gogofile.com/Default.aspx?p=sc&ID=634817287005530000_4331) – Martyn