.targets
IDE를 통해 Delphi XE 프로젝트에 포함 된 사용자 정의 MSBuild 파일을 작성 하고 프로젝트 관리자의 상황에 맞는 메뉴에서 활성화했습니다. 파일의 유효성이 검사되지만 프로젝트 파일을 다시 저장 한 후에는 항상 비활성화됩니다.
다음은 이름이 지정된 대상 파일의 단순화 된 버전입니다 Custom.targets
.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="Hello">
<Message Text="Hello from custom target"/>
</Target>
</Project>
독립형 파일로서 이것은 예상대로 작동합니다 : 입력 ...
MSBuild Custom.target /t:Hello
... 명령 행에 예상되는 메시지가 표시됩니다.
Custom.targets
IDE를 통해 Delphi 프로젝트에 추가하면 예상대로 프로젝트 관리자에 파일이 표시되고 파일에 .dproj
이제 줄이 포함됩니다.
<TargetsFile Include="Custom.targets"/>
IDE의 프로젝트 관리자에서 파일을 마우스 오른쪽 버튼으로 클릭하고을 선택했습니다 Enable
. 그러나 프로젝트가 빌드되면 Build
메시지 창이 표시됩니다.
[MSBuild 경고] Custom.targets (1) : 비활성화 된 가져 오기 무시 :
PathToProjectSource\\Custom.targets
프로젝트 관리자에서 마우스 오른쪽 버튼을 다시 클릭하면 여전히 Enable
예상 옵션 대신 옵션이 표시 됩니다 Disable
.
명령 행 MSBuild ProjectName.dproj /t:Hello
에서도 실패합니다.
.dproj
줄을 추가하기 위해 파일을 해킹하려고 시도했습니다 ...
<Import Project="Custom.targets"/>
타이핑이 MSBuild ProjectName.dproj /t:Hello
이제 작동합니다. 그러나 다음에 IDE에서 프로젝트 파일을 저장하면 <Import>
명령문이 제거됩니다.
아무도 무슨 일이 일어나고 있는지 알고 있습니까?
/t:Hello
. 프로젝트 관리자-대상-Hello에서 마우스 오른쪽 버튼을 클릭하여 명령 프롬프트와 IDE에서 빌드 하십시오. Custom.targets
프로젝트 관리자-추가-(파일 찾아보기)를 마우스 오른쪽 버튼으로 클릭하여 프로젝트에 추가 했습니다. 경로는 .dproj 파일과 동일한 디렉토리입니다.