Dela via


MSB4248 diagnostikkod

I den här artikeln beskrivs felkoden för MSB4248.

Meddelandetext

MSB4248: Cannot expand metadata in expression 'expression'.

Anmärkningar

Det MSB4248 felet uppstår när MSBuild inte kan expandera objektmetadata i en byggåtgärd. Den här situationen inträffar vanligtvis när metadatareferenser används i en ogiltig kontext eller när metadata som refereras inte finns för objektet.

Möjliga orsaker

Det här felet kan uppstå av följande skäl:

  1. metadata stöds inte för objektet Till exempel refererar %(RootDir) till ett objekt som inte är en sökväg.

  2. metadata för dynamiska objekt i komplexa versioner

    • Dynamiskt genererade objektmetadata kanske inte alltid är tillgängliga, beroende på byggkonfigurationen.

Upplösning

  1. Verifiera att de begärda metadata är konsekventa med objektet.

  2. Villkorlig åtkomst till metadata

    • För dynamiska versioner kontrollerar du att metadata används villkorligt för att undvika att referera till odefinierade metadata:

      <Message Text="Target Framework: %(Metadataname)" Condition="'%(Metadataname)' != ''" />
      

Gäller för

Alla versioner av MSBuild