2013-10-04 3 views
0

У меня есть проекты X в растворе: AllPlatformProject1, AllPlatformProject2 ... ProjectOnlyForWindows1, OnlyForWindows2 ... ProjectNotLinux1, ProjectNotLinux2 ...Как исключить некоторые проекты из здания?

Я хочу, чтобы исключить "OnlyForWindows" и "NotLinux", но как? Я хочу использовать xbuild и быть в состоянии сделать это для всех целей.

ответ

3

Вы не можете сделать это с помощью одного sln. Обычно люди создают несколько решений даже в одном каталоге.

Everything.sln 
WindowsCentric.sln 
LinuxCentric.sln 

что-то в этом духе.

«gotcha» заключается в том, что ... когда вы добавляете ссылку на проект, оба проекта должны быть в файле .sln.

1

Вы пытались использовать разные конфигурации для сопряжения с вашими целями и опускать конфигурации из конкретных проектов? Пример:

Решения конфигурация:

LinuxDebug 
LinuxRelease 
WindowsDebug 
WindowsRelease 

И тогда вы скажите решение опускают Linux проекты из Windows * конфигурации и наоборот?

Я признаю, что я не использовал xbuild, но этот подход работает в MSBuild, если вы используете решения и не обходите файлы proj. В случае файлов прогона Traversal вы можете просто добавить условные обозначения к включениям ItemGroup, чтобы опустить проекты, основанные на свойстве $().

 Смежные вопросы

  • Нет связанных вопросов^_^