28
다른 MsBuild 작업에서 사용할 MsBuild 작업의 경로를 계산하고 싶습니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?MsBuild 작업의 결과를 반환 하시겠습니까?
환경 변수를 설정하고 콘솔에 인쇄하는 중 ...?
다른 MsBuild 작업에서 사용할 MsBuild 작업의 경로를 계산하고 싶습니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?MsBuild 작업의 결과를 반환 하시겠습니까?
환경 변수를 설정하고 콘솔에 인쇄하는 중 ...?
속성이나 항목을 사용하십시오. MSBuild는 경로를 계산하고 속성으로 반환하며이 속성을 다른 작업의 입력으로 사용합니다.
public class CalculatePathTask : ITask
{
[Output]
public String Path { get; set; }
public bool Execute()
{
Path = CalculatePath();
return true;
}
}
<Target Name="CalculateAndUsePath">
<CalculatePathTask>
<Output TaskParameter="Path" PropertyName="CalculatePath"/>
</CalculatePathTask>
<Message Text="My path is $(CalculatePath)"/>
</Target>
두의 MSBuild 프로젝트 사이의 값을 전달해야하는 경우 값을 다시 얻을은 MSBuild 작업을 사용하여 다른를 호출하고 TargetOutputs에게 요소를 사용하는 세 번째를 만들어야합니다 당신을 필요.
단지 짧은 메모 : 제 경우에는'ItemName'이 작동하지 않았습니다. "PropertyName"으로 변경하자마자 매력처럼 작동했습니다. – sebagomez
시도했으나 "TaskParameter"매개 변수가 "MyCustomTask"작업에서 지원되지 않습니다. 매개 변수가 작업에 있는지 확인하십시오.이 매개 변수는 설정 가능한 public 인스턴스 속성입니다. ' – jpierson