.targetsIDE 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.targetsIDE üzerinden bir Delphi projesine eklenmesi dosyayı beklendiği gibi Proje Yöneticisi'nde görüntüler ve .dprojdosya ş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 Buildmesaj 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:Helloda başarısız olur.
.dprojSatır eklemek için dosyayı hacklemeyi denedim ...
<Import Project="Custom.targets"/>
Yazmak MSBuild ProjectName.dproj /t:Helloartı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:Hellove IDE'den Proje Yöneticisi - Hedefler - Merhaba sağ tıklamayla bina . Custom.targetsProje Yöneticisi - Ekle - (dosyaya göz atıldı) üzerine sağ tıklayarak projeye ekledim . Yol, .dproj dosyasıyla aynı dizindir.