.targets
IDE aracılığıyla bir Delphi XE projesine dahil ettiğim özel bir MSBuild dosyası oluşturdum ve Proje Yöneticisi'nin bağlam menüsünden etkinleştirdim. Dosya doğrulasa da, proje dosyasını yeniden kaydettikten sonra her zaman devre dışı kalır.
İşte, hedefler dosyasının basitleştirilmiş bir sürümü Custom.targets
.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="Hello">
<Message Text="Hello from custom target"/>
</Target>
</Project>
Tek başına bir dosya olarak bu beklendiği gibi çalışır: yazarak ...
MSBuild Custom.target /t:Hello
... komut satırında beklenen iletiyi verir.
Custom.targets
IDE üzerinden bir Delphi projesine eklenmesi dosyayı beklendiği gibi Proje Yöneticisi'nde görüntüler ve .dproj
dosya şimdi satırı içerir ...
<TargetsFile Include="Custom.targets"/>
IDE'nin Proje Yöneticisi'nde dosyayı sağ tıklatıp seçtim Enable
. Ancak proje oluşturulduğunda Build
mesaj penceresi görüntülenir:
[MSBuild Warning] Özel hedefler (1): Devre dışı bırakılan içe aktarma yoksayılıyor:
PathToProjectSource\\Custom.targets
Proje Yöneticisi'nde yeniden sağ tıklatıldığında Enable
, beklenen yerine hala seçenek gösterilir Disable
.
Komut satırında MSBuild ProjectName.dproj /t:Hello
da başarısız olur.
.dproj
Satır eklemek için dosyayı hacklemeyi denedim ...
<Import Project="Custom.targets"/>
Yazmak MSBuild ProjectName.dproj /t:Hello
artık işe yarıyor. Ancak bir dahaki sefere proje dosyasını IDE'den kaydettiğimde <Import>
deyim kaldırılıyor.
Neyin yanlış gittiğini bilen var mı lütfen?
/t:Hello
ve IDE'den Proje Yöneticisi - Hedefler - Merhaba sağ tıklamayla bina . Custom.targets
Proje Yöneticisi - Ekle - (dosyaya göz atıldı) üzerine sağ tıklayarak projeye ekledim . Yol, .dproj dosyasıyla aynı dizindir.