Остановить Visual Studio 2017 от автоматического создания выходного каталога - PullRequest
0 голосов
/ 12 сентября 2018

Итак, у меня есть решение с 70-ю проектами, которое я обновил, чтобы использовать файл Directory.build.props, чтобы использовать одну папку bin, чтобы сделать наш процесс CI более чистым.Прекрасно работает, и теперь все в одном расположении

НО проблема сейчас в том, что когда я открываю Visual Studio 2017, он создает кучу дополнительных папок проекта, которые НИКОГДА не используются.В любом случае, чтобы отключить это?Это просто сбивает с толку людей и загромождает все репозитории разработчиков.

Пример:

% sourceroot% \ bin \ release \ (здесь все проекты удачно объединены)

% sourceroot% \ bin \ project1Neverused \ (нежелательные папки, которые просто загромождают мой ящик разработчика)

% sourceroot% \ bin \ project2neverUsed \

% sourceroot% \ bin \ project1Neverused \

% sourceroot% \ bin \ project2neverUsed \

Вот мой файл Directory.build.props:

<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <SolutionDir>$(MSBuildThisFileDirectory)</SolutionDir> <OutputPath>$(SolutionDir)bin\$(Configuration)\$(MSBuildProjectName)</OutputPath> <OutDir>$(OutputPath)</OutDir> </PropertyGroup> </Project>

1 Ответ

0 голосов
/ 12 сентября 2018

Теперь откройте файл sln в Visual studio, и если вы посмотрите, VS создаст эти папки автоматически, даже если вы еще ничего не создали.Я хочу, чтобы это было отключено, потому что это просто генерирует ненужные папки, которые не используются.Так как мы используем props-файл для msbuild для binplace, мы не обновляли каждый файл проекта со значения по умолчанию «bin \ debug»

Да, Visual Studio по умолчанию создаст папку bin/obj, когдаВы создаете новый проект / решение.Кажется, что нет прямой настройки, чтобы запретить Visual Studio создавать эти папки.

В качестве обходного пути вы можете попробовать добавить задачу удаления в файл Directory.build.props, чтобы удалить эти папки:

  <Target Name="CleanFolder" AfterTargets="Build">
    <RemoveDir Directories="$(BaseIntermediateOutputPath)" />
    <RemoveDir Directories="$(ProjectDir)bin" />
  </Target>

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...