Могу ли я получить TargetOutputs задачи MSBuild в сценарии Rake / Albacore? - PullRequest
1 голос
/ 24 сентября 2011

MSBuild может предоставить список выходных данных проекта, если вы определите элемент Output, как показано ниже

  <MSBuild Projects="YourSln.sln">
      <Output ItemName="YourProjectOutputs" TaskParameter="TargetOutputs"/>
  </MSBuild>

Могу ли я получить этот список с Рейком / Альбакором?

1 Ответ

1 голос
/ 28 сентября 2012

Я не могу найти способ предоставить параметр Output для MSBuild в командной строке, кроме как через файл .csproj или .target. Так что я не думаю, что это что-то, что мы можем исправить, добавив больше функций в задачу Albuore msbuild (которая просто вызывает msbuild в оболочке).

Вы все еще можете получить список результатов проекта / решения, используя обычный Ruby / Rake. Это не идеально, но начните с одной msbuild OutputPath

msbuild :msbuild do |msb|
  msb.solution = 'YourSln.sln'
  msb.properties :configuration => :Debug, :outputpath => './bin/Debug'
  msb.targets = [ :Clean, :Build ]
end

И определить FileList, который принимает все элементы из этого каталога (и подкаталогов)

msbuild_output = FileList['./bin/Debug/**/*']

Вы можете определить только файлы .exe или .dll, но вы не будете знать, были ли они на самом деле событиями вывода вывода или содержимого или содержимого после сборки или что-то еще. Это обратная сторона.

...