Сведения о вопросе

CPdeveloper

16:27, 29th August, 2020

Теги

Как автоматизировать сборку Visual Studio?

Просмотров: 715   Ответов: 11

Как превратить сборку Visual Studio, выполняемую в IDE, в сценарий, который можно запустить из командной строки?



  Сведения об ответе

lats

22:29, 18th August, 2020

\Windows\Microsoft.NET\Framework\[YOUR .NET VERSION]\msbuild.exe

Много параметров командной строки, но самый простой - это просто:

msbuild.exe yoursln.sln


  Сведения об ответе

screen

12:09, 9th August, 2020

С VS2008 вы можете сделать это:

devenv solution.sln /build configuration


  Сведения об ответе

screen

18:09, 2nd August, 2020

Самый простой способ: перейдите в каталог, содержащий файл решения или проекта, и запустите msbuild (при условии, что у вас есть Visual Studio 2005 или новее).

Более гибкие пути:

  • Читайте дальше на MSBuild ссылка. Там есть тонны настройка, особенно один раз вы установили проект MSBuild Community Tasks .
  • Использования NAnt . Он уже существовал для более длинного чем MSBuild и имеет больше поддержка сообщества, но требует вас чтобы запустить файл проекта из царапина, а не расширение существующий, созданный Visual Studio.


  Сведения об ответе

fo_I_K

21:45, 25th August, 2020

NAnt и MSBuild - это самые популярные инструменты для автоматизации сборки в .NET, и вы можете найти там обсуждение плюсов/минусов каждого из них в вопросе переполнения стека Best .NET build tool .


  Сведения об ответе

darknet

17:51, 10th August, 2020

Посмотрите на инструмент сборки NAnt или MSBuild . Я считаю, что MSBuild-это инструмент сборки для Visual Studio 2005 и более поздних версий. Однако я являюсь поклонником NAnt...


  Сведения об ответе

PROGA

23:06, 22nd August, 2020

Вот сценарий, который я использую, чтобы полностью автоматизировать сборку командной строки конфигураций x86 AND x64 для одного и того же решения с помощью пакетных сценариев.

Это основано на DevEnv.exe, как это работает, если у вас есть проект настройки в вашей сборке (msbuild не поддерживает проекты настройки сборки).

Я предполагаю, что ваши установки-это 32-разрядная Windows 7 с помощью Visual студии установки 2010 с помощью x86 собственного компилятора и компилятора x64 крест. Если вы используете 64bit windows, вам может потребоваться изменить x86_amd64 на amd64 в пакетном скрипте в зависимости от вашей установки. Это при условии, что Visual Studio установлен в Program Files и ваше решение находится в D:\MySoln

Создайте файл с именем buildall.bat и добавьте это в него:

D:
cd "D:\MySoln"

if "%1" == "" goto all
if %1 == x86 goto x86
if %1 == x64 goto x64

:x86
%comspec% /k ""C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"" x86 < crosscompilex86.bat
goto eof

:x64
%comspec% /k ""C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"" x86_amd64 < crosscompilex64.bat
goto eof

:all
%comspec% /k ""C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"" x86 < crosscompilex86.bat
if %ERRORLEVEL% NEQ 0 goto eof
%comspec% /k ""C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"" x86_amd64 < crosscompilex64.bat
goto eof

:eof
pause

Теперь создайте 2 дополнительных пакетных скриптах:

crosscompilex86.bat чтобы построить версию выпуска сборки x86 и включить это

devenv MySoln.sln /clean "Release|x86"
IF %ERRORLEVEL% NEQ 0 EXIT /B %ERRORLEVEL%
devenv MySoln.sln /rebuild "Release|x86"
IF %ERRORLEVEL% NEQ 0 EXIT /B %ERRORLEVEL%

crosscompilex64.bat чтобы построить выпускную версию сборки x64 и включить это

devenv MySoln.sln /clean "Release|x64"
IF %ERRORLEVEL% NEQ 0 EXIT /B %ERRORLEVEL%
devenv MySoln.sln /rebuild "Release|x64"
IF %ERRORLEVEL% NEQ 0 EXIT /B %ERRORLEVEL%

Теперь поместите все 3 пакетных файла вместе с MySoln.sln в папку вашего решения. Вы можете построить как версии выпуска x86, так и x64, создав ярлык на рабочем столе, который запускает следующие команды:

  • Построить Все -> D:\MySoln\buildall.bat
  • Сборка x86 Только Релиз - > D:\MySoln\buildall.bat x86
  • Сборка только для выпуска x64 - > D:\MySoln\buildall.bat x64

Если вы используете другую конфигурацию, например AnyCPU и т. д., Вам нужно будет соответствующим образом настроить вышеупомянутые сценарии.


  Сведения об ответе

PAGE

12:55, 16th August, 2020

Начиная с Visual Studio 2005, все файлы проекта (по крайней мере, для проектов на основе .NET) являются фактическими файлами MSBuild, поэтому вы можете вызвать MSBuild в командной строке и передать ему файл проекта.

Суть в том, что вам нужно использовать "build scripting language", как NAnt или MSBuild (есть и другие, но они сейчас являются основными), если вы хотите иметь какой-либо реальный контроль над процессом сборки.


  Сведения об ответе

9090

22:05, 13th August, 2020

Взгляните на UppercuT. У него есть много возможностей для вашего доллара, и он делает то, что вы ищете, и многое другое.

UppercuT использует NAnt для сборки, и это безумно простая в использовании платформа сборки.

Автоматизированные сборки так же просты, как (1) имя решения, (2) путь управления версиями, (3) название компании для большинства проектов!

http://projectuppercut.org/

Некоторые хорошие объяснения здесь: UppercuT


  Сведения об ответе

appple

16:41, 7th August, 2020

Вот мой пакетный файл, использующий msbuild для VS 2010 Debug configuration:

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe" 
iTegra.Web.sln /p:Configuration=Debug /clp:Summary /nologo


  Сведения об ответе

davran

21:00, 13th August, 2020

Я должен был сделать это для проекта C++ в Visual Studio 2003 , поэтому я не знаю, насколько это относится к более поздней версии visual studio:

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

Creating temporary file "c:\some\path\RSP00003C.rsp" with contents
[
/D "WIN32" /D "_WINDOWS" /D "STRICT" /D "NDEBUG" ..... (lots of other switches)
.\Project.cpp
.\Another.cpp
.\AndAnother.cpp
".\And Yet Another.cpp"
]
Creating command line "cl.exe @c:\some\path\RSP00003C.rsp /nologo"

создайте файл .rsp с содержимым между квадратными скобками (но не включая квадратные скобки) и назовите его как угодно. Я, кажется, помню, что у меня были проблемы с абсолютными путями, поэтому вам, возможно, придется убедиться, что все пути относительны.

Затем в вашем скрипте сборки добавьте командную строку из файла BuildLog.htm , но с вашим именем .rsp:

cl.exe @autobuild01.rsp /nologo

(обратите внимание, что там также будет раздел link.exe, а также cl.exe)


  Сведения об ответе

darknet

05:20, 23rd August, 2020

Более простым способом является изменение конфигурации VS 2015 проектов & решений: Перейдите на вкладку Инструменты - > Параметры - > проекты и решения - > сборка и запуск - > при запуске, когда проекты устарели (выберите Всегда строить). VOILA!

Теперь ваш IDE автоматически построит ваш проект, когда вы запустите его (F5). Надеюсь, что это поможет, любые отзывы приветствуются.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться