mon*_*_za 34 c# msbuild visual-studio nuget
我正在使用MSBuild生成我的nuget包.
是否需要设置任何命令,允许它包含我的.pdb文件,以便在调试时插入源代码?
我不希望源文件包含在拉入nuget包的项目中.
Pau*_*her 32
如果您使用的是VS2017 15.4或更高版本,则可以在项目文件中定义MSBuild属性
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
Run Code Online (Sandbox Code Playgroud)
这在NuGet#4142中讨论
Jef*_*ler 28
虽然它可能对调试没有帮助,但包含.pdb文件以使堆栈跟踪具有行号绝对有用.
在nuspec文件中,包含一个<files>元素(子节点<package>,兄弟节点<metadata>).这就是我在其中一个类库中的内容:
<files>
<file src="bin\$configuration$\$id$.pdb" target="lib\net452\" />
</files>
Run Code Online (Sandbox Code Playgroud)
确保目标与.dll文件放在包中的文件夹相同.
Jos*_*man 20
使用新的 csproj 格式创建 NuGet 变得非常容易,因为 MSBuild 完成了大部分工作。
为了包含您的pdb文件,您只需输入标签
<IncludeSymbols>true</IncludeSymbols>
在您正在打包的项目的 csproj 文件中的属性组中。这将创建一个额外的.symbols.nupkg包,您可以将其发布到您的(调试)提要。
这也可以通过 dotnet CLI 完成。
通过包装
dotnet pack --include-symbols --include-source [path-to-project-here]
Run Code Online (Sandbox Code Playgroud)
我对我生成的包进行了全面调试
| 归档时间: |
|
| 查看次数: |
14270 次 |
| 最近记录: |