2013-12-14 3 views
0

MSBuild를 배우려고합니다. 나는이처럼 보이는 C# 프로젝트 파일이 시작 : 그러나MSBuild - 참고 자료 포함

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 

    <PropertyGroup> 
    <RootNamespace>$(MSBuildProjectName)</RootNamespace> 
    <AssemblyName>$(MSBuildProjectName)</AssemblyName> 
    <TargetFrameworkVersion>v4.5.1</TargetFrameworkVersion> 
    <FileAlignment>512</FileAlignment> 
    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> 
    </PropertyGroup> 
    <ItemGroup> 
    <Compile Include="**\*.cs" /> 
    </ItemGroup> 
    <ItemGroup> 
    <Reference Include="System" /> 
    <Reference Include="System.Core" /> 
    <Reference Include="System.Xml.Linq" /> 
    <Reference Include="System.Data.DataSetExtensions" /> 
    <Reference Include="Microsoft.CSharp" /> 
    <Reference Include="System.Data" /> 
    <Reference Include="System.Xml" /> 
    </ItemGroup> 

    <Target Name="Build"> 
    <Csc 
     AdditionalLibPaths="C:\Windows\Microsoft.NET\Framework\v4.0.30319\" 
     References="@(Reference)" 
     Sources="@(Compile)" 
     OutputAssembly="$(MSBuildProjectName).exe" 
     /> 
    </Target> 
</Project> 

를, CSC는 내가 포함하도록 노력했습니다 각 기준에 대해 한 번,이 메타 데이터 파일 'XYZ'를 찾을 수 없다는 실패 . 그래서 내가 뭘 잘못

MSBuild References Problem

: 또한, Visual Studio에서 비슷한 문제가보고?

답변

0

이 때문에 대상 이름 =이 오류가 발생하는 이유는 특히 라인에서

<Target Name="Build"> 
     <Csc AdditionalLibPaths="C:\Windows\Microsoft.NET\Framework\v4.0.30319\" 
     References="@(Reference)" 
     Sources="@(Compile)" OutputAssembly="$(MSBuildProjectName).exe" /> 
    </Target> 

을 "빌드"

 <Csc AdditionalLibPaths="C:\Windows\Microsoft.NET\Framework\v4.0.30319\" 
     References="@(Reference)" 
     Sources="@(Compile)" OutputAssembly="$(MSBuildProjectName).exe" /> 

을이 추가 lib 디렉토리를 제거 할 수 있습니다 당신이 필요하지 않은 경우 경로, 필요한 경우 웹에서 AddtionalLib 경로를 설정하는 방법을 잘 할 수 있어야합니다. This이 도움을 드릴 수 있습니다.

+0

안녕하세요 - 답변 감사합니다. 나는 너를 잘 모를거야. 내가 바꿀 생각 이라니? – Xenoprimate

+0

때문에 이러한 오류가 발생하는 것으로 보입니다. 따라서 제거하면 오류가 나타나서는 안됩니다. – Spock