【发布时间】:2013-07-28 19:16:16
【问题描述】:
尝试在单声道上构建 NuGet 并获得:
error CS1744: Named argument `allowPrereleaseVersions' cannot be used for a parameter which has positional argument specified
运行:
xbuild Build/Build.proj /p:Configuration="Mono Release" /t:GoMono || die
问题:它是什么?是错误还是我做错了什么?
一些分析...
代码:
public void InstallPackage(string packageId, SemanticVersion version)
{
InstallPackage(packageId, version, ignoreDependencies: false, allowPrereleaseVersions: false);
}
错误来自:https://github.com/mono/mono/blob/master/mcs/mcs/ecore.cs#L5324
完整日志:
XBuild Engine 版本 3.2.0.0 Mono,版本 3.2.0.0 版权所有 (C) Marek Sieradzki 2005-2008,Novell 2008-2011。
构建于 2013 年 7 月 29 日 09:24:01 开始。 ____________________________ 项目“/var/tmp/portage/dev-dotnet /nuget-2013.07/work/Build/Build.proj" (GoMono 目标): 目标恢复包: 项目“/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/CommandLine/CommandLine.csproj” (构建目标): 目标 PrepareForBuild: 配置:Mono 发布平台:AnyCPU 创建目录“bin/Release/” 创建目录“obj/Mono Release/” 目标解决项目参考: 项目“/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/Core/Core.csproj” (默认目标): 目标 PrepareForBuild: 配置:Mono 发布平台:AnyCPU 创建目录“bin/Release/” 创建目录“obj/Mono Release/” 目标 CopyFilesMarkedCopyLocal: 从“/var/tmp/portage/dev-dotnet/nuget-2013.07/work/lib/Microsoft.Web.XmlTransform.dll”复制文件 到 '/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/Core/bin/Release/Microsoft.Web.XmlTransform.dll' 目标 CopyNonResxEmbeddedResources: 从“/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/Core/Authoring/nuspec.xsd”复制文件 到'/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/Core/obj/Mono 发布/NuGet.Authoring.nuspec.xsd' 目标生成资源: 工具 /usr/bin/resgen2 使用参数开始执行:/useSourcePath /compile "../../Common/CommonResources.resx,obj/Mono 发布/NuGet.CommonResources.resources" 工具 /usr/bin/resgen2 使用参数开始执行:/useSourcePath /compile “资源/AnalysisResources.resx,obj/Mono 发布/NuGet.Resources.AnalysisResources.resources" 工具 /usr/bin/resgen2 使用参数开始执行:/useSourcePath /compile “资源/NuGetResources.resx,obj/Mono 发布/NuGet.Resources.NuGetResources.resources" 目标 GenerateSatelliteAssemblies: 没有为目标 GenerateSatelliteAssemblies 指定输入文件,跳过。 目标核心编译: 工具 /usr/bin/dmcs 执行以参数开始: /noconfig /debug:pdbonly /optimize+ /out:"obj/Mono 发布/NuGet.Core.dll" /resource:"obj/Mono 发布/NuGet.CommonResources.resources" /resource:"obj/Mono 发布/NuGet.Resources.AnalysisResources.resources" /resource:"obj/Mono 发布/NuGet.Resources.NuGetResources.resources" /resource:"obj/Mono Release/NuGet.Authoring.nuspec.xsd" ../../Common/CommonResources.cs ../../Common/CommonAssemblyInfo.cs ../../Common/GlobalSuppressions.cs 分析/IPackageRule.cs 分析/PackageIssue.cs 分析/DefaultPackageRuleSet.cs 分析/PackageIssueLevel.cs 分析/规则/InitScriptNotUnderToolsRule.cs 分析/规则/InvalidFrameworkFolderRule.cs 分析/规则/MisplacedAssemblyRule.cs 分析/规则/MisplacedScriptFileRule.cs 分析/规则/MisplacedTransformFileRule.cs 分析/规则/MissingSummaryRule.cs 分析/规则/WinRTNameIsObsoleteRule.cs 创作/AssemblyMetadata.cs 创作/AssemblyMetadataExtractor.cs 创作/EmptyFrameworkFolderFile.cs 创作/IPackageBuilder.cs 创作/IPropertyProvider.cs 创作/ManifestDependencySet.cs 创作/ManifestFrameworkAssembly.cs 创作/ManifestDependency.cs 创作/ManifestFile.cs 创作/ManifestMetadata.cs 创作/ManifestReader.cs 创作/ManifestReference.cs 创作/ManifestReferenceSet.cs 创作/ManifestSchemaUtility.cs 创作/ManifestVersionAttribute.cs Authoring/ManifestVersionUtility.cs Authoring/NullPropertyProvider.cs 创作/PackageDependencySet.cs 创作/PackageReferenceSet.cs 创作/PhysicalPackageAssemblyReference.cs 配置/ConfigurationDefaults.cs 配置/SettingsCredentialProvider.cs 配置/ISettings.cs 配置/NullSettings.cs 配置/Settings.cs Configuration/SettingValue.cs EnvironmentVariableWrapper.cs 扩展/CredentialProviderExtensions.cs 扩展/EnumerableExtensions.cs 扩展/ObjectExtensions.cs 扩展/PackageOperationExtensions.cs Extensions/QueryableExtensions.cs 扩展/SettingsExtensions.cs 扩展/TaskExtensions.cs 扩展/VersionExtensions.cs FileModifiers/FileTransformExtensions.cs Http/CredentialStore.cs Http/CredentialType.cs Http/ICredentialCache.cs Http/IHttpWebResponse.cs Http/IProxyCache.cs Http/MultipartWebRequest.cs Http/NullCredentialProvider.cs Http/ProxyCache.cs Http/RepositoryOperationNames.cs Http/RequestHelper.cs Http/STSAuthHelper.cs Http/WIFTypeProvider.cs IEnvironmentVariableReader.cs IMachineWideSettings.cs 记录/FileConflictResolution.cs 记录/IFileConflictResolver.cs NETPortable/NetPortableProfile.cs NETPortable/NetPortableProfileCollection.cs NETPortable/NetPortableProfileTable.cs PackageRestoreConsent.cs 包/LocalPackage.cs 包/OptimizedZipPackage.cs 包/UnzippedPackage.cs PackageWalker/NuGetVersionNotSatisfiedException.cs 项目系统/ProjectImportLocation.cs 存储库/ILatestPackageLookup.cs ProjectSystem/IBatchProcessor.cs 存储库/ICloneableRepository.cs 存储库/ICultureAwareRepository.cs 存储库/IPackageCacheRepository.cs 存储库/IPackageReferenceRepository.cs 存储库/IOOperationAwareRepository.cs 存储库/IServiceBasedRepository.cs 存储库/PackageName.cs 存储库/UnzippedPackageRepository.cs 资源/AnalysisResources.Designer.cs SemanticVersion.cs SemanticVersionTypeConverter.cs 服务器/PackageServer.cs GlobalSuppressions.cs IPackageManager.cs IProjectManager.cs PackageSource/IPackageSourceProvider.cs PackageSource/PackageSourceProvider.cs PackageSource/PackageSourceProviderExtensions.cs 包/FrameworkAssemblyReference.cs 包/IFrameworkTargetable.cs 包/IPackageMetadata.cs Packages/IServerPackageMetadata.cs PackageWalker/ConflictResult.cs 存储库/IDependencyResolver.cs PackageWalker/PackageSorter.cs PackageWalker/IPackageOperationResolver.cs PackageWalker/IDependentsResolver.cs PackageWalker/PackageAction.cs PackageWalker/PackageOperation.cs PackageWalker/PackageTargets.cs PackageWalker/PackageWalkInfo.cs ProjectSystem/NullFileSystem.cs 项目系统/PhysicalFileSystem.cs ConstraintProviders/AggregateConstraintProvider.cs 存储库/AggregateQuery.cs 存储库/AggregateRepository.cs ConstraintProviders/DefaultConstraintProvider.cs ConstraintProviders/IPackageConstraintProvider.cs 存储库/IPackageLookup.cs 存储库/MachineCache.cs 存储库/NullConstraintProvider.cs 存储库/PackageReference.cs 存储库/PackageReferenceFile.cs 实用程序/CredentialResult.cs 实用程序/CredentialState.cs 实用程序/CustomAttributeProviderExtensions.cs 实用程序/DisposableAction.cs 实用程序/EncryptionUtility.cs 实用程序/ExceptionUtility.cs Http/HttpUtility.cs Http/ICredentialProvider.cs Http/IHttpClientEvents.cs 存储库/LazyQueue.cs 存储库/ProgressEventArgs.cs 存储库/SmartDataServiceQuery.cs 存储库/BufferedEnumerable.cs 存储库/DataServiceContextWrapper.cs 存储库/DataServiceQueryWrapper.cs 存储库/ExpressionRewriter.cs 存储库/IDataServiceContext.cs 存储库/IDataServiceQuery.cs 存储库/IPackageRepositoryFactory.cs 存储库/ISharedPackageRepository.cs 存储库/OrderingComparer.cs Extensions/AppDomainExtensions.cs 扩展/AssemblyNameExtensions.cs 存储库/SharedPackageRepository.cs 运行时/AssemblyBinding.cs 运行时/BindingRedirectManager.cs 运行时/BindingRedirectResolver.cs 运行时/IAssembly.cs 运行时/RemoteAssembly.cs Extensions/CollectionExtensions.cs FileModifiers/Preprocessor.cs FileModifiers/XmlTransfomer.cs Http/IHttpClient.cs 实用程序/FrameworkNameEqualityComparer.cs 实用程序/IProgressProvider.cs 实用程序/IVersionSpec.cs 实用程序/MemoryCache.cs 实用程序/PackageComparer.cs 实用程序/PackageRepositoryHelper.cs 实用程序/PackageIdValidator.cs 实用程序/PathValidator.cs Http/RedirectedHttpClient.cs 实用程序/ProjectManagerExtensions.cs 实用程序/ReadOnlyHashSet.cs 实用程序/VersionSpec.cs 实用程序/WebRequestEventArgs.cs FileModifiers/XdtTransformer.cs 记录/NullLogger.cs 记录/ILogger.cs PackageOperationEventArgs.cs 日志记录/MessageLevel.cs PackageManager.cs 创作/PhysicalPackageFile.cs 创作/PackageBuilder.cs 创作/PathResolver.cs 创作/Manifest.cs PackageSource/PackageSource.cs 包/DataServicePackage.cs 包/DefaultPackagePathResolver.cs 包/IPackage.cs 包/IPackagePathResolver.cs ProjectManager.cs FileModifiers/IPackageFileTransformer.cs 存储库/DataServicePackageRepository.cs Utility/HashCodeCombiner.cs Http/HttpClient.cs 实用程序/PackageDownloader.cs 实用程序/IHashProvider.cs Utility/PackageEqualityComparer.cs PackageWalker/PackageMarker.cs 包/ZipPackage.cs 包/IPackageAssemblyReference.cs Packages/ZipPackageAssemblyReference.cs PackageWalker/PackageWalker.cs PackageWalker/InstallWalker.cs PackageWalker/UpdateWalker.cs PackageWalker/DependentsWalker.cs PackageWalker/UninstallWalker.cs 项目系统/IFileSystem.cs 存储库/PackageReferenceRepository.cs 扩展/PackageExtensions.cs 存储库/PackageRepositoryExtensions.cs 扩展/文件系统扩展.cs 存储库/PackageRepositoryFactory.cs 资源/NuGetResources.Designer.cs Extensions/ProjectSystemExtensions.cs 实用程序/PathUtility.cs 实用程序/QueryableUtility.cs 实用程序/CryptoHashProvider.cs 扩展/StreamExtensions.cs 扩展/StringExtensions.cs 实用程序/PackageHelper.cs 实用程序/XmlUtility.cs ProjectSystem/IProjectSystem.cs 存储库/PackageRepositoryBase.cs 存储库/IPackageRepository.cs 包/Constants.cs 包/IPackageFile.cs 包/PackageDependency.cs 存储库/LocalPackageRepository.cs 属性/AssemblyInfo.cs 实用程序/UriUtility.cs 实用程序/VersionUtility.cs Extensions/XElementExtensions.cs 包/ZipPackageFile.cs /target:library /warnaserror+ /define:CODE_ANALYSIS /platform:AnyCPU /参考:../../lib/Microsoft.Web.XmlTransform.dll /参考:/usr/lib/mono/4.0/System.dll /参考:/usr/lib/mono/4.0/System.ComponentModel.DataAnnotations.dll /参考:/usr/lib/mono/4.0/System.Data.Services.Client.dll /参考:/usr/lib/mono/4.0/System.Runtime.Serialization.dll /参考:/usr/lib/mono/4.0/System.Security.dll /参考:/usr/lib/mono/4.0/System.ServiceModel.dll /参考:/usr/lib/mono/4.0/System.Xml.Linq.dll /参考:/usr/lib/mono/4.0/Microsoft.CSharp.dll /参考:/usr/lib/mono/4.0/System.Xml.dll /参考:/usr/lib/mono/4.0/WindowsBase.dll /参考:/usr/lib/mono/4.0/System.Core.dll /warn:4 PackageManager.cs(97,75):错误 CS1744:命名参数
allowPrereleaseVersions' cannot be used for a parameter which has positional argument specified PackageManager.cs(100,29): (Location of the symbol related to previous error) PackageManager.cs(97,48): error CS1744: Named argumentignoreDependencies' 不能用于具有 指定的位置参数 PackageManager.cs(100,29):(符号位置与上一个相关 错误) 任务“Csc”执行——失败 在项目中完成构建目标“CoreCompile” “/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/Core/Core.csproj”.- 失败的 完成构建项目“/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/Core/Core.csproj”.- 失败的 任务“MSBuild”执行——失败 在项目中完成构建目标“ResolveProjectReferences” “/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/CommandLine/CommandLine.csproj”.- 失败的 完成构建项目“/var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/CommandLine/CommandLine.csproj”。-- 失败的 任务“MsBuild”执行——失败 在项目“/var/tmp/portage/dev-dotnet/nuget-2013.07/work/Build/Build.proj”中完成构建目标“RestorePackages”。- 失败完成的建筑项目 “/var/tmp/portage/dev-dotnet/nuget-2013.07/work/Build/Build.proj”.- 失败构建失败。错误:
/var/tmp/portage/dev-dotnet/nuget-2013.07/work/Build/Build.proj (GoMono)->(RestorePackages 目标)-> /var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/CommandLine/CommandLine.csproj (构建)-> /usr/lib/mono/4.0/Microsoft.Common.targets (ResolveProjectReferences 目标)-> /var/tmp/portage/dev-dotnet/nuget-2013.07/work/src/Core/Core.csproj (默认目标)-> /usr/lib/mono/4.0/Microsoft.CSharp.targets (CoreCompile 目标)->
PackageManager.cs(97,75): error CS1744: Named argument `allowPrereleaseVersions' cannot be used for a parameter which has指定的位置参数 PackageManager.cs(97,48):错误 CS1744:命名参数“ignoreDependencies”不能用于具有 指定位置参数
0 Warning(s) 2 Error(s)
【问题讨论】:
-
InstallPackage 方法的签名是什么?接受 4 个参数的那个。
-
@NikitaBrizhak 托管在这里:nuget.codeplex.com/SourceControl/latest#src/Core/…