有什么方法可以使用在发布模式下编译的代码来制作NuGet包吗?或者有什么原因我应该只发布(在这种情况下,在本地可用)在调试模式下编译的包?
每次我从我的项目目录调用nuget pack
时,在我仅在发布模式下编译的代码上,它都会报告在调试文件夹("\bin\Debug\SomeProject.dll"
)中找不到DLL。如果我在调试模式下编译它,这些文件就在那里,并且它会按照它应该的方式将它们打包。
<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>$id$</id>
<version>$version$</version>
<authors>$author$</authors>
<owners>$author$</owners>
<iconUrl>http://somewhere/project.png</iconUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>$description$</description>
</metadata>
</package>
发布于 2011-07-01 01:34:31
发布于 2013-08-14 08:20:00
如果您正在使用构建后事件,并且您想创建一个包,无论是使用Debug还是Release configuration,您都可以像这样设置构建后事件命令行:
"<path to nuget tools>\NuGet.exe" pack "$(ProjectPath)" -Prop Configuration=$(ConfigurationName)
发布于 2018-12-12 05:50:15
这里的答案是好的,但我在.NET标准项目中遇到了很多问题。我有一个项目,它只发布发布的二进制文件,但它没有遵守我的默认构建输出路径。
我将它添加到我的CSProj中,这使我能够使用接受的答案here。
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<OutputPath>$(SolutionDir)bin\$(PlatformTarget)\Release</OutputPath>
</PropertyGroup>
https://stackoverflow.com/questions/6536629
复制相似问题