Dan*_*tac 8 nuget-package cakebuild
我正在尝试使用Cake脚本创建一个NuGet包:
var configuration = Argument("configuration", "Release");
var binDir = Directory("./bin") ;
var nugetPackageDir = Directory("./artifacts");
var nugetFilePaths = GetFiles("./**/*.csproj").Concat(GetFiles("./**/*.nuspec"));
var nuGetPackSettings = new NuGetPackSettings
{
BasePath = binDir + Directory(configuration),
OutputDirectory = nugetPackageDir
};
Task("NuGetPack")
.Does(() => NuGetPack(nugetFilePaths, nuGetPackSettings));
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
========================================
NuGetPack
========================================
Executing task: NuGetPack
Attempting to build package from 'SomeProject.csproj'.
MSBuild auto-detection: using msbuild version '12.0' from 'C:\Program Files (x86)\MSBuild\12.0\bin'.
Unable to find 'C:\DEV\SomeProject\bin\Debug\SomeProject.dll'. Make sure the project has been built.
An error occured when executing task 'NuGetPack'.
Error: NuGet: Process returned an error (exit code 1).
Run Code Online (Sandbox Code Playgroud)
它搜索Debug文件夹中的程序集而不是Release文件夹.如何将NuGetPack构建配置设置为Cake中的Release?
Dan*_*tac 10
您需要将下面的命令行参数添加-Prop Configuration=Release到nuget pack命令:
var nuGetPackSettings = new NuGetPackSettings
{
BasePath = binDir + Directory(configuration),
OutputDirectory = nugetPackageDir,
ArgumentCustomization = args => args.Append("-Prop Configuration=" + configuration)
};
Run Code Online (Sandbox Code Playgroud)
小智 6
它可以使用Properties属性设置:
var nuGetPackSettings = new NuGetPackSettings
{
BasePath = binDir + Directory(configuration),
OutputDirectory = nugetPackageDir,
Properties = new Dictionary<string, string>
{
{ "Configuration", configuration }
}
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2131 次 |
| 最近记录: |