无法使用msbuild构建工作流项目(Sharepoint 2010)

时间:2012-02-01 12:57:59

标签: sharepoint sharepoint-2010 msbuild teamcity sharepoint-workflow

我使用teamcity使用64位MSBuild构建Sharepoint项目。所有项目都可以正常工作而不是我的工作流项使用Framework 4.0时,我收到错误消息

  

C:\的Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Workflow.Targets(121,5):   错误MSB4018:“CompileWorkflowTask”任务意外失败。   [V:\工作流\ MyCustomer.WFs.TranslationWorkflow \ MyCustomer.WFs.TranslationWorkflow \ MyCustomer.WFs.TranslationWorkflow.csproj]   C:\ WINDOWS \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Workflow.Targets(121,5):   错误MSB4018:System.IO.DirectoryNotFoundException:找不到   路径的一部分   'C:\ WINDOWS \ system32 \设置\ systemprofile \应用程序数据\本地的\ Temp \ vjwduioy.tmp'。   [V:\工作流\ MyCustomer.WFs.TranslationWorkflow \ MyCustomer.WFs.TranslationWorkflow \ MyCustomer.WFs.TranslationWorkflow.csproj]

我记得微软已经摆脱了旧的Workflow机制,所以我预计它可能只适用于旧的3.5框架并用它构建项目但是又出现了另一个错误:

  

C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ SharePointTools \ Microsoft.VisualStudio.SharePoint.targets(37,45):错误MSB4019:导入的项目“C:\ Windows \ Microsoft找不到.NET \ Framework64 \ v3.5 \ Workflow.Targets“。确认声明中的路径是否正确,以及该文件是否存在于磁盘上。

在Visual Studio 2010中,建筑工作正常。

2 个答案:

答案 0 :(得分:6)

找到解决方案: 我必须在'C:\ Windows \ system32 \ config \ systemprofile \ AppData \ Local \ Temp \'

中创建一个文件夹

这似乎是一个完整的TeamCity问题

答案 1 :(得分:0)

通过修改CMD环境解决。

添加<uses-permission android:name="android.permission.INTERNET" /> 对我没有帮助。

C:\Windows\system32\config\systemprofile\AppData\Local\Temp\也是。{ 甚至更多,在\ SysWOW64下添加\ Temp文件夹后......由于new weird bug VBCSCompiler.exe导致CSC,我被迫使用MSBuild x64:错误CS2001:源文件...无法使用结果

此外,我无法一直使用MSBuild x64 我无法通过DevEnv.com使用MSBuild x64来构建Visual Studio安装项目。 DevEnv只允许使用x32 MSBuild。

希望我找到了解决所有这些错误的有趣方法 我已经通过覆盖CMD的环境变量(如AppData等)来更改CMD调用的配置文件夹。

以下是完整且有效的版本 - MSBuild-File-System-Redirector-fail-System32-to-SysWOW64

抱歉,但没有Wrapping a call of MSBuild and DevEnv by a batch file你就无法使用它。或者与此answer相同。