我们在我们公司开发了一个VSIX Visual扩展类型的“自定义工具”。此扩展将从某些xml文件生成C#代码。现在,我有一个项目,生成VSIX作为构建的结果。
目标:我还想把这个VSIX包打包到一个NuGet包中,我的同事可以在他们的解决方案上安装。,所以我正在寻找某种项目模板或类似的东西。或者,如果在现有的项目(现在产生VSIX)中有一些触发过程的东西,那么它甚至是好的。在Visual (2013)中,我似乎找不到任何模板。
额外的讨论:如果我要手工为VSIX创建NuGet包,情况如何?我正在查看NuGet包资源管理器。我应该添加哪些文件以及在哪个目录层次结构中添加?我有一个VSIX文件(它包含extension.vsixmanifest、生成器dll和pkgdef)。pkgdef引用生成器程序集以及覆盖的语言。如何构造NuGet包?
( Visual中有一个代码生成器示例:http://code.msdn.microsoft.com/Visual-Studio-2010-SDK-ddfe1372,请参阅"SingleFileGenerator“示例。我们的扩展目的非常不同,但在架构上是一样的:它从C#生成一个xml)。
我试着搜索这个问题,但是点击谈到了非常不同的场景,比如项目模板类型的VSIX,以及如何将NuGet包包含到VSIX中,等等。从理论上讲,我的要求并不那么复杂。
发布于 2014-06-25 14:37:21
不久前,我使用VSIXCommands创建了一个包,它实际上完成了这个任务。只需引用VSIXCommand包并将包中的install.ps更改为如下所示:
param($installPath, $toolsPath, $package, $project)
$id = 'yourPackageId'
$extension = Get-InstalledVsix $id
if(!$extension) {
Install-GalleryVsix $id
}https://stackoverflow.com/questions/21119829
复制相似问题