1

我已通过VS2012中的发布GUI删除了一些旧的旧发布配置文件(包括名为'Package'的配置文件)。当我检查代码并通过TeamCity运行构建时,出现以下错误。VS2012发布配置文件破解TeamCity

Rebuild MSBuild 
trunk\SomeService\SomeService.csproj 
ValidatePublishProfileSettings 
GetPublishingLocalizedString 
C:\Program Files  (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets(4253, 5): The value  for PublishProfile is set to 'Package', expected to find the file at  'E:\BuildAgent2\work\6ec5bd58ee82179a\trunk\SomeService\Properties\PublishProfiles\Package.pubxml'  but it could not be found. 
GetPublishingLocalizedString 
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets(4260, 4): PublishProfile(Package) is set. But the $(WebPublishMethod) does not have a valid value. Current  Value is "". 
Error 
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets(4267, 5): Target ValidatePublishProfileSettings Failed 
Project trunk\SomeService\SomeServiceService.csproj failed. 
trunk\SomeService\SomeServiceTests.csproj 
Project trunk\SomeServiceTests\SomeServiceTests.csproj failed. 
Project trunk\SomeService.sln failed. 

出于某种原因,我似乎无法获得参考的乘坐这种旧的Web部署发布配置文件(“Package.pubxml”)。我在.proj文件中看不到任何明显的东西。

构建是香草VS打造的TeamCity

Runner: Visual Studio Step name: build 
Solution File: trunk/SomeService.sln 
Visual Studio: VS 2012 
Targets: Rebuild 
Configuration: Release 
Command line params: 'emtpy' 

我如何能明确下来这个古老的发布配置有什么建议?或者为什么当我只是在做一个简单的构建时,甚至会首先被调用?当我通过命令提示符在本地调用MSBuild时,一切正常。

任何帮助极大赞赏

+0

仍然停留在此。任何建议感激。 VS不想放弃这个旧的发布配置文件。已经尝试了一些东西,解决方案干净,在proj文件中查找引用,删除所有发布配置文件并重新开始。 –

回答

0

尝试更改您的跑步者类型为MSBuild。您的“构建文件路径”将成为您的解决方案路径并适当设置所有其他字段。

+0

谢谢Adarsh。一些很好的建议。我有另一个构建运行。无法回想一下,如果我更改此版本以匹配。星期一会看看。希望我忘了将build runner更改为MSBuild。 –

+0

没有快乐。使用MSBuild转轮时得到相同的错误。我相信这是VS跑垒员在引擎盖下使用的。奇怪的是,我已经把所有的文件都转移到了新的解决方案中,包括新的项目文件和干净的发布配置文件,但我仍然遇到了错误。为什么不会忘记这个旧的发布配置文件?很奇怪。 –

+1

尝试在teamcity中创建一个新项目,然后在那里创建构建配置。它将分配一个新的GUID并在构建框上有一个新的路径。 –

0

原来我已经设置了一些系统参数,其中强制发布使用旧的发布配置文件!

system.DeployOnBuild true 
system.PublishProfile package 

Adarsh感谢您的帮助。你建议创建一个新项目是合理的。似乎这些参数是在根层建立的,所以仍然被拾取。

相关问题