.targetsIDEを介して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.targetsIDEを介してDelphiプロジェクトに追加すると、.dprojファイルが期待どおりにプロジェクトマネージャに表示され、ファイルに次の行が含まれます...
<TargetsFile Include="Custom.targets"/>
IDEのプロジェクトマネージャでファイルを右クリックし、を選択しましたEnable。しかし、プロジェクトがビルドされると、Buildメッセージウィンドウが表示されます。
[MSBuild警告] Custom.targets(1):無効なインポートを無視:
PathToProjectSource\\Custom.targets
Project Managerでもう一度右クリックしてもEnable、期待されるの代わりにオプションが表示されDisableます。
コマンドラインでMSBuild ProjectName.dproj /t:Helloも失敗します。
.dprojファイルをハッキングして行を追加しようとしました...
<Import Project="Custom.targets"/>
タイピングがMSBuild ProjectName.dproj /t:Hello機能するようになりました。しかし、次回IDEからプロジェクトファイルを保存すると、<Import>ステートメントが削除されます。
誰が何が悪いのか分かりませんか?
/t:Helloから、およびIDEからプロジェクトマネージャーを右クリックしてビルド-ターゲット-こんにちは。私が追加したCustom.targets追加- -プロジェクトマネージャを右クリックして、プロジェクトに(ファイルの閲覧します)。パスは、.dprojファイルと同じディレクトリです。