عنصر Target (MSBuild)
يحتوي على مجموعة من المهام الخاصة لـ MSBuild للتنفيذ بشكل تسلسلي.
<Target Name="Target Name"
DependsOnTargets="DependentTarget"
Inputs="Inputs"
Outputs="Outputs"
Condition="'String A' == 'String B'">
<Task>... </Task>
<OnError... />
</Target>
السمات والعناصر
تصف المقاطع التالية سمات، عناصر تابعة وعناصر الأصل.
السمات
السمة |
الوصف |
---|---|
Name |
سمة مطلوبة. اسم الهدف. |
DependsOnTargets |
السمة الاختيارية الأهداف التي يجب تنفيذها قبل تنفيذ هذا الهدف أو قبل حدوث تحليل تبعية المستوى العلوي. يتم فصل الأهداف المتعدّدة بفواصل منقوطة. |
Inputs |
السمة الاختيارية إدخالات العنصر لهذا الهدف. يتم استخدام العناصر التي تكون داخل هذه السمة كإدخالات في تحليل تبعية المستوى العلوي. |
Outputs |
السمة الاختيارية المخرجات المتوقعة لهذا الهدف. يمكنك تطبيق التحويلات إلى عناصر الإدخال لإنشاء عناصر الإخراج. للحصول على معلومات أكثر حول التحويلات، راجع التحويلات MSBuild. |
Condition |
السمة الاختيارية الشرط الذي سيتم تقييمه. إذا تم تقييم الشرط إلى false، لا يقوم الهدف بتنفيذ نص الهدف أو أي أهداف في السمة DependsOnTargets. لمزيد من المعلومات حول الشروط، راجع شروط MSBuild. |
العناصر التابعة
العنصر |
الوصف |
---|---|
تنشىء و تنفذ مثيل مهمة MSBuild. قد لا يكون هناك مهام أو يكون هناك مهمة واحدة أو أكثر في الهدف. |
|
يؤدي إلى تنفيذ واحد أو أكثر من الأهداف إذا كانت السمة ContinueOnError هي false للمهمة الفاشلة. قد يكون هناك صفر أو أكثر من عناصر OnError في الهدف. إذا وجدت عناصر OnError، يجب أن تكون العناصر الأخيرة في عنصر Target. |
العناصر الأصلية
العنصر |
الوصف |
---|---|
العنصر الجذري المطلوب في ملف المشروع MSBuild. |
ملاحظات
يتم اختيار الهدف الأول للتنفيذ في وقت التشغيل. يمكن أن يكون للأهداف اعتمادية على أهداف أخرى. على سبيل المثال، هدف عن النشر يعتمد على هدف الترجمة. يقوم مشغّل MSBuild بتنفيذ التبعيات بالترتيب الذي تظهر به في السمة DependsOnTargets من اليسار إلى اليمين. لمزيد من المعلومات، راجع الأهداف MSBuild.
يتم تنفيذ الهدف فقط مرة واحدة أثناء البناء، حتى وإن كان هناك أكثر من الهدف يعتمد عليه.
إذا تم تخطي هدف بسبب تقييم سمة Condition إلى false، يمكن استمرار تنفيذه إذا تم استدعاؤه لاحقاً في البناء، حيث يتم تقييم سمة Condition إلى true في هذا الوقت.
مثال
يظهر مثال التعليمات البرمجية التالي عنصر Target الذي ينفذ مهمة Csc.
<Target Name="Compile" DependsOnTargets="Resources" >
<Csc Sources="@(CSFile)"
TargetType="library"
Resources="@(CompiledResources)"
EmitDebugInformation="$(includeDebugInformation)"
References="@(Reference)"
DebugType="$(debuggingType)" >
<Output TaskParameter="OutputAssembly"
ItemName="FinalAssemblyName" />
</Csc>
</Target>