我正在尝试构建DotNetOpenAuth,但有一些构建错误。我很好奇这些错误是否真的是通用的。我下载了代码,它在VS.NET 2010中加载得很好,除了在编译时它依赖于GithubCommitId的。
当在build script:+build.$(BuildNumber).$(GitCommitId.Substring(0,10))中使用此行时,就会出现问题
这是构建日志。
------ Rebuild All started: Project: Mono.Math, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.Core, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: Org.Mentalis.Security.Cryptography, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.OAuth.Common, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.OAuth2, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.OAuth, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.InfoCard, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.Core.UI, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.OAuth2.Client, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.OAuth.Consumer, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.OAuth.ServiceProvider, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.OAuth2.AuthorizationServer, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: DotNetOpenAuth.InfoCard.UI, Configuration: Debug Any CPU ------
C:\Users\Administrator\Desktop\AArnott-dotnetopenid-6c29eba\tools\DotNetOpenAuth.Versioning.targets(29,4): error MSB4184: The expression """.Substring(0, 10)" cannot be evaluated. Index and length must refer to a location within the string. Parameter name: length
------ Rebuild All started: Project: RelyingPartyDatabase, Configuration: Debug Any CPU ------PS:这已经在GitHub和issue #88上发布了。
发布于 2012-03-14 07:23:22
正如在Issue 88中提到的,解决方法是使用git而不是.zip文件下载源代码库。
这个问题仍然悬而未决,正在等待对构建创作的修复,因此它不需要git的存在。
https://stackoverflow.com/questions/9676886
复制相似问题