2017-02-28 76 views
0

我有一個簡單的解決方案樹:VSTS失敗建設項目MSB1009文件不存在

庫:DFW-SPF-網站 | - 解決方案:DFWSPFWebsite | - | - 項目:DFWSPFWebsite

在我之前的文章中,我解釋了爲了讓VSTS找到我的NuGet包所必須經歷的扭曲。過了一段時間才領導MSBuild進程找到.sln文件。現在MSBuild找不到項目文件。真?!

無數的變身後,我當前構建設置:

解決方法:$(build.sourcesDirectory)/DFWSPFWebsite/DFWSPFWebsite.sln

的MSBuild參數:/p:ProjectFile=$(build.sourcesDirectory) \ DFWSPFWebsite \ DFWSPFWebsite \ DFWSPFWebsite.csproj

平臺:$(BuildPlatform) 配置:$(BuildConfiguration) 清潔:真 VS版本:二千零十七分之二千零一十五/最新(嘗試所有) 控制選項:Enabled

我不能讓過去的錯誤的MSBuild:

「C:\ Program Files文件(x86)的\的MSBuild \ 14.0 \ BIN \ msbuild.exe」「d:\ A \ 1 \ S \ DFWSPFWebsite \ DFWSPFWebsite.sln「/ nologo/nr:false/t:」Clean「/dl:CentralLogger,"D:\a_tasks\VSBuild_abc-xyz\1.113.0\ps_modules\MSBuildHelpers\Microsoft.TeamFoundation.DistributedTask.MSBuild。 Logger.dll 「;」 RootDetailId = ABC-XYZ | SolutionDir = d:\一個\ 1 \ S \ DFWSPFWebsite 「* ForwardingLogger,」 d:\ a_tasks \ VSBuild_71abc-XYZ \ 1.113.0 \ ps_modules \ MSBuildHelpers \ Microsoft.TeamFoundation。 DistributedTask.MSBuild.Logger.dll「/p:ProjectFile=D:\a\1\s\DFWSPFWebsite\DFWSPFWebsite.csproj/p:platform =」any cpu「/ p:configuration =」release「/ p:VisualStudioVersion =」 14.0「/ p:_MSDeployUserAgent =」VSTS_abc-xyz_build_2_38「 MSBUILD:錯誤MSB1009:項目文件不存在。 開關:D:\ a \ 1 \ s \ DFWSPFWebsite \ DFWSPFWebsite.sln 用代碼'1'退出進程'msbuild.exe'。 「D:\ a \ 1 \ s \ DFWSPFWebsite \ DFWSPFWebsite.sln」/ nologo/nr:false/dl:CentralLogger,「D:\ Program Files(x86)\ MSBuild \ 14.0 \ bin \ msbuild.exe」D :\ a_tasks \ VSBuild_71abc-XYZ \ 1.113.0 \ ps_modules \ MSBuildHelpers \ Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll 「;」 RootDetailId = ABC-XYZ | SolutionDir = d:\一個\ 1 \ S \ DFWSPFWebsite「* ForwardingLogger,「D:\ a_tasks \ VSBuild_71abc-xyz \ 1.113.0 \ ps_modules \ MSBuildHelpers \ Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll」/ p:ProjectFile = D:\ a \ 1 \ s \ DFWSPFWebsite \ DFWSPFWebsite。 csproj/p:platform =「any cpu」/ p:configuration =「release」/p:VisualStudioVersion="14.0「/ p:_MSDeployUserAgent =」VSTS_14abc-xyz_build_2_38「 MSBUILD:錯誤MSB1009:項目文件不存在。 開關:D:\ a \ 1 \ s \ DFWSPFWebsite \ DFWSPFWebsite.sln 用代碼'1'退出進程'msbuild.exe'。

我從來沒有想過我會錯過我的XAML部署這麼多。

+0

如果在DFWSPFWebsite \ DFWSPFWebsite \ DFWSPFWebsite.csproj中存在項目文件,請檢查您的項目。順便說一下,請檢查** MSBuild參數**,它是'/ p:ProjectFile = $(build.sourcesDirectory)\ DFWSPFWebsite \ DFWSPFWebsite \ DFWSPFWebsite.csproj'或'/p:ProjectFile=$(build.sourcesDirectory)\DFWSPFWebsite \ DFWSPFWebsite.csproj'。根據你的日誌'/ p:ProjectFile = D:\ a \ 1 \ s \ DFWSPFWebsite \ DFWSPFWebsite.csproj',看起來你設置的參數是'/ p:ProjectFile = $(build.sourcesDirectory)\ DFWSPFWebsite'。 –

+0

如果我查看代碼選項卡,項目就像所有必需的文件一樣。無奈之下,我嘗試了兩個版本的Project path @Marina提及以及無數其他差異。我幾乎要在VS 2015中重建整個事情,因爲我懷疑我的基本問題是,儘管從那以後我已經通過VS的版本遷移過,但很久以前我開始在VS事情是,找到一個.csproj文件是一件很簡單的事情 - 這怎麼能工作?我還有更多的部署步驟。令人不安。 – KramFfud

+0

如果您將** MSBuild參數**留空,該怎麼辦?它默認直接在當前工作中找到工程文件。 –

回答

0

首先,請在VS 2015中構建您的解決方案,以確保它可以成功構建。然後你可以在VSTS中構建。

由於您只想構建一個解決方案,因此您可以從按鈕中選擇DFWSPFWebsite.sln按鈕來執行nuget安裝程序任務和visual studio構建任務。

掘金安裝程序:

enter image description here

的Visual Studio編譯:

enter image description here

+0

sln通過之前部署到Azure的XAML進行構建並運行良好。 我更新到VS 2017 RC,現在使用更靈活的'** \ *。sln'。 VSTS MSBuild現在可以找到.csproj文件。錯誤消息的網址指向2013年的NuGet 2.17頁面和NuGet程序包恢復,自2015年以來一直未在VS中使用。我正在使用NuGet 3.5。 > DFWSPFWebsite \ DFWSPFWebsite \ DFWSPFWebsite.csproj(739,5):錯誤:此項目引用此計算機上缺少的NuGet程序包。啓用NuGet軟件包還原以下載它們。有關更多信息,請參閱http://go.microsoft.com/fwlink/?LinkID=317567。 – KramFfud

+0

我懷疑我需要遵循@Marina關於NuGet Installer/Restore的建議,但是我找不到上面捕獲的頁面。 VSTS本身在其代碼頁面上不提供任何類似的內容。我錯過了什麼? – KramFfud

+0

我列出了操作編號,所以你應該先點擊'...'按鈕,然後找到'.sln'。 –

0

我有一個乾淨的構建!是的,省略是好的 - 我使用的是預發佈UI。我還必須將幾個外部引用的dll重定位到sln下的dll文件夾中。而且,我必須從csproj文件中刪除<Target Name="EnsureBclBuildImported"…/>,<Import Project="..\packages\Microsoft.Bcl.Build…/><Target Name="EnsureNuGetPackageBuildImports"…/>節點。見[MSDN](https://docs.microsoft.com/en-us/nuget/consume-packages/package-restore#migrating-to-automatic-restore)因爲我不應該這麼做,所以我不會把我無法估量的讚賞發給@Marina。 :*

相關問題