[Закрываются] скрытые функции msbuild

уверен, что это возможно! Вы можете просто заставить Jetty выставлять как фильтр SparkJava, так и сервлет Vaadin 10+. Я создал пример приложения, основанного на работе Алехандро: https://github.com/mvysny/embedded-jetty-demo

8
задан Precipitous 10 May 2009 в 21:03
поделиться

5 ответов

MSBuild имеет ряд хороших функций. Мне нравятся

рекурсивные спецификации файлов

<Files Include="$(src)\**\*.cs" Exclude="$(src)\**\*test.cs" />

Пакетирование и метаданные элементов

<ItemGroup>
 <F Include="SampleApplication.t">
    <Version>1</Version>
</F>
 <F Include="SampleApplication2.t">
    <Version>1</Version>
</F>
<F Include="SampleApplication3.t">
   <Version>2</Version>
</F>
</ItemGroup>
<Target Name="Build">
<Touch Files="%(F.FullPath)" AlwaysCreate="True" 
        Condition=" '%(F.Version)' > '1' ">
<Output TaskParameter="TouchedFiles" ItemName="CreatedFiles"/>
</Touch>
<Message Text="Created files = @(CreatedFiles)"/>
<Message Text="%(F.Identity) %(F.Version)"/>
</Target>

Анализ зависимостей целевого уровня

<Target Name="Build"
           Inputs="@(MyItems)"
           Outputs="@(MyItems -> '$(MyItems)\%(filename).dll'">
5
ответ дан 5 December 2019 в 12:12
поделиться

На самом деле это не скрытая функция, но я думаю, что пакетная обработка очень эффективна, если ее понять.

Для получения дополнительной информации вы можете прочитать мои записи в блоге по адресу:

Сайед Ибрагим Хашими

Моя книга: Внутри Microsoft Build Engine: использование MSBuild и Team Foundation Build

4
ответ дан 5 December 2019 в 12:12
поделиться

Используйте параметр командной строки / M , чтобы разрешить использование всех доступных ядер ЦП.

3
ответ дан 5 December 2019 в 12:12
поделиться
  • Я нашел MSBuild Пакет расширения невероятно полезно. Документация очень хорошо организована и позволяет легко найти необходимую информацию.

  • У них есть раздел по настройке intellisense для файлов сборки, который можно найти здесь

  • У Attrice есть невероятный инструмент, который я часто использую, если Мне нужно поработать над сценариями сборки. Что делает его полезным, так это то, что у него есть отладчик, который покажет вам зависимые задачи, когда он выполняет ваш сценарий сборки, с переменными auto и watch во время выполнения сценария сборки. Microsoft Build Sidekick v2.3

  • Установка SVN в тихий режим, как мне кажется, значительно увеличила скорость процесса сборки. Добавление следующего в ваш MSBuild.Community.Tasks.Subversion.SvnExport запустит сборку без регистрации каждого файла, который он получает из SVN

    Arguments = "- force -q"

2
ответ дан 5 December 2019 в 12:12
поделиться

Вы можете ссылаться на один файл msbuild из другого. Все наши цели, например, для запуска NCover, SourceMonitor, Duplo и т. Д., Находятся в общем файле целей. Для каждого проекта мы создаем файл msbuild с разделами PropertyGroup и ItemGroup с последующим включением в общие цели. Это гарантирует, что все наши сборки будут выполнять один и тот же набор аналитических задач, и сэкономит нам время на написание сценариев.

0
ответ дан 5 December 2019 в 12:12
поделиться