J'ai créé un MSBuild personnalisé. .targets
que j'ai inclus dans un projet Delphi XE via l'IDE et que j'ai activé à partir du menu contextuel du gestionnaire de projet. Bien que le fichier soit validé, il est toujours désactivé lorsque je réenregistre le fichier du projet.
Voici une version simplifiée du fichier des cibles, nommée Custom.targets
.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="Hello">
<Message Text="Hello from custom target"/>
</Target>
</Project>
En tant que fichier autonome, cela fonctionne comme prévu : taper...
MSBuild Custom.target /t:Hello
...à la ligne de commande donne le message attendu.
Ajout de Custom.targets
à un projet Delphi via l'IDE affiche le fichier dans le gestionnaire de projet comme prévu, et la commande .dproj
contient maintenant la ligne...
<TargetsFile Include="Custom.targets"/>
J'ai fait un clic droit sur le fichier dans le gestionnaire de projet de l'IDE et j'ai sélectionné Enable
. Mais lorsque le projet est construit, le Build
La fenêtre de message s'affiche :
[Avertissement MSBuild] Custom.targets(1) : Ignorer l'importation désactivée :
PathToProjectSource\\Custom.targets
En cliquant à nouveau avec le bouton droit de la souris dans le gestionnaire de projet, on obtient toujours l'écran suivant Enable
au lieu de l'option attendue Disable
.
À la ligne de commande MSBuild ProjectName.dproj /t:Hello
échoue également.
J'ai essayé de pirater le .dproj
pour ajouter la ligne...
<Import Project="Custom.targets"/>
Dactylographie MSBuild ProjectName.dproj /t:Hello
fonctionne maintenant. Mais la prochaine fois que je sauvegarderai le fichier du projet à partir de l'IDE, l'écran de l'IDE ne fonctionnera pas. <Import>
est supprimée.
Quelqu'un a une idée de ce qui ne va pas ?