код диагностики MSB4248

В этой статье описывается код ошибки MSB4248.

Текст сообщения

MSB4248: Cannot expand metadata in expression 'value'.

Замечания

Ошибка MSB4248 возникает, когда MSBuild не может развернуть метаданные элемента в операции сборки. Эта ситуация обычно происходит, когда ссылки на метаданные используются в недопустимом контексте или когда ссылки на метаданные не существуют для элемента. Например, использовались встроенные метаданные SomeItem->%(Extension) , но элемент не является файлом.

Эта ошибка также может возникать, если пути к файлам превышают максимальную длину пути. Если вы используете длинные пути, проверьте параметр операционной системы LongPathsEnabled Windows. Дополнительные сведения см. в разделе "Максимальное ограничение пути к файлу".

Резолюция

  1. убедитесь, что запрошенные метаданные согласованы с элементом.

  2. Условный доступ к метаданным

    • Для динамических сборок убедитесь, что метаданные обрабатываются условно, чтобы не ссылаться на неопределенные метаданные.

      <Message Text="Target Framework: %(Metadataname)" Condition="'%(Metadataname)' != ''" />
      
  3. Включите длинные пути в операционной системе Windows.

Применимо к

Все версии MSBuild