2013-04-10 40 views
0

我正在嘗試編寫一個Msbuild腳本,它將檢索一個解決方案保存在本地路徑中,然後構建解決方案。MsBuild Subversion錯誤元素<Project>無法識別

從命令行執行時,出現錯誤 - MSB4060該元素無法識別,或者在此上下文中不受支持。任何指針將不勝感激。

<project name="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003>"> 

    <PropertyGroup> 
    <RepositoryPath>http://Path<RepositoryPath> 
    <svnUsername>USERNAME</svnUsername> 
    <svnPassword>PASSWORD</svnPassword> 
    <LocalPath>LOCAL_PATH_TO_COMPILE_SOLUTION</LocalPath> 
    <solutionFileName>SOLUTION_FILENAME</solutionFileName> 
    </PropertyGroup> 

    <!--<ItemGroup> 
    </ItemGroup>--> 

    <Import Project="C:\Program Files\MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/> 

    <Target Name="GetSource"> 
    <Message Text="Checking out trunk into $(LocalPath)" /> 
    <SvnCheckout RepositoryPath="$(RepositoryPath)" 
     LocalPath="$(LocalPath)" 
     UserName="$(svnUsername)" 
     Password="$(svnPassword)"> 
     <Output TaskParameter="Revision" PropertyName="Revision" /> 
    </SvnCheckout> 
    <Message Text="Have got revision: $(Revision)"/> 
    </Target> 

    <Target Name="Build" DependsOnTargets="GetSource;Clean;" /> 

    <Target Name="Clean"> 
    <MSBuild Projects="$(LocalPath)$(solutionFileName)" Targets="Clean;Rebuild" /> 
    </Target> 

</project> 

回答

1
    您的樣品中
  • 使用大寫Project根元素代替小寫project
  • 使用正確的命名空間xmlns="http://schemas.microsoft.com/developer/msbuild/2003"(即閉引號之前除去>)爲RepositoryPath
  • 修復結束標記

    ie - 只生成有效的MSBUILD XML項目

  • +0

    哎呀,也可能使用瞭解XML的編輯器? – 2013-04-11 11:16:00