Как вы создаете сборку Visual Studio, которую вы выполняете в среде IDE, в script, которую вы можете запустить из командной строки?
Как автоматизировать сборку Visual Studio?
Ответ 1
С VS2008 вы можете сделать это:
devenv solution.sln /build configuration
Ответ 2
\Windows\Microsoft.NET\Framework\[YOUR .NET VERSION]\msbuild.exe
Множество параметров командной строки, но самое простое:
msbuild.exe yoursln.sln
Ответ 3
Простейший путь: перейдите в каталог, содержащий решение или файл проекта, и запустите msbuild
(если у вас есть Visual Studio 2005 или новее).
Более гибкие способы:
- Читайте на MSBuild ссылка. Есть тонны настройка, особенно один раз вы установили Проект задач сообщества MSBuild.
- Используйте NAnt. Он существует дольше, чем MSBuild, и имеет больше сообщества, но требует от вас для запуска файла проекта из нуля, а не существующий, созданный Visual Studio.
Ответ 4
NAnt и MSBuild - самые популярные инструменты для автоматизации вашей сборки в .NET, и вы может найти обсуждение там преимуществ/недостатков каждого в вопросе Лучший инструмент построения .NET.
Ответ 5
Посмотрите на инструмент построения NAnt или MSBuild. Я считаю, что MSBuild - это инструмент построения Visual Studio 2005 и более поздних версий. Я, однако, поклонник NAnt...
Ответ 6
По сравнению с Visual Studio 2005 все файлы проекта (по крайней мере для проектов на основе .NET) являются актуальными MSBuild, поэтому вы можете вызвать MSBuild в командной строке и передать ему файл проекта.
Суть в том, что вам нужно использовать "скриптовый язык сборки", например NAnt или MSBuild (есть другие, но они являются основными в настоящее время), если вы хотите иметь какой-либо реальный контроль над процессом сборки.
Ответ 7
Взгляните на UppercuT. У него много шансов для вашего доллара, и он делает то, что вы ищете, и многое другое.
UppercuT использует NAnt для сборки, и это безумно прост в использовании Build Framework.
Автоматизированная сборка проста: имя решения (1), (2) путь управления исходным кодом, (3) название компании для большинства проектов!
Несколько хороших объяснений здесь: UppercuT
Ответ 8
Вот мой пакетный файл с использованием msbuild для VS 2010. Конфигурация отладки:
"C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe"
iTegra.Web.sln /p:Configuration=Debug /clp:Summary /nologo
Ответ 9
Вот script, который я использую для полной автоматизации построения командной строки конфигураций x86 и x64 для одного и того же решения с помощью пакетных скриптов.
Это основано на DevEnv.exe, поскольку оно работает, если у вас есть проект установки в вашей сборке (msbuild не поддерживает проекты установки Setup).
Я предполагаю, что ваша установка - 32-битная Windows 7 с установкой Visual Studio 2010 с использованием собственного компилятора x86 и кросс-компилятора x64. Если вы используете 64-битные окна, вам может потребоваться изменить x86_amd64 на amd64 в пакетном script в зависимости от вашей установки. Это предполагает, что 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
Теперь создайте еще два скрипта:
crosscompilex86.bat, чтобы создать версию Release сборки 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 и т.д., вам нужно будет соответствующим образом настроить приведенные выше сценарии.
Ответ 10
Мне пришлось сделать это для проекта С++ в Visual Studio 2003, поэтому я не знаю, насколько уместно это для более поздней версии визуальной студии:
В каталоге, в котором создается ваш исполняемый файл, будет находиться файл 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 с содержимым между квадратными скобками (но не включая квадратные скобки) и вызовите его, как вам нравится. Кажется, я помню, что у вас проблемы с абсолютными путями, поэтому вам, возможно, придется убедиться, что все пути являются относительными.
Затем в вашей сборке script добавьте командную строку из файла BuildLog.htm
, но с вашим .rsp filename:
cl.exe @autobuild01.rsp /nologo
(обратите внимание, что также будет ссылка link.exe, а также cl.exe)
Ответ 11
Более простой способ - изменить конфигурацию VS 2015 проектов и решений: Перейдите на вкладку Инструменты → Параметры → Проекты и решения → Сборка и запуск → Вкл., Когда проекты устарели (выберите Всегда строить). VOILA!
Теперь ваша IDE автоматически создаст ваш проект при запуске (F5). Надеюсь, что это поможет, любые отзывы приветствуются.