Предварительная сборка Visual Studio 2010 для компиляции и развертывания решения - PullRequest
1 голос
/ 15 июня 2011

Мне нужно установить событие pre-build в visual studio, которое будет создавать и развертывать решение.отдельное решение находится в каталоге под текущим каталогом решения, в котором я работаю. Имеет ли это смысл?

           top level dir
          /          \
         /            \
        /              \
 |------------|    |-----------------|
 | mySLn.sln  |    |prebuild sln dir |
 |------------|    |-----------------|
                          \
                           \
                            \
                   |-----------------|
                   |  prebuild.sln   |
                   |-----------------|

проблема в том, что у нас есть несколько разработчиков, чтобы использовать абсолютный путь дляРешение не будет работать.нам придется вручную обновлять путь для каждого разработчика на каждом сервере.Есть ли у разработчиков событие предварительной сборки для сборки и развертывания prebuild.sln из Visual Studio 2010 с относительным путем?все, что я вижу в сети, - это полный путь: devenv / build devenv / deploy

есть ли переменная, которую я могу найти для полного пути, в котором находится текущее решение, и добавить свой подкаталог и решение к команде devenv дляполный путь?

Ответы [ 2 ]

0 голосов
/ 15 июня 2011

У вас есть два варианта:

Первый - это исправить структуру решений и добавить ссылки на проекты в mySln.sln.(Для этого вам нужно добавить подпроекты в решение, затем добавить ссылки на проекты. Затем вы можете удалить подпроекты из mySln.sln, если хотите.)

Второй вариантсостоит в том, чтобы построить проекты в готовом решении.Затем вы настраиваете ссылочные пути в проектах, где вам нужно ссылаться на выходные данные перед сборкой, а затем добавляете ссылки на библиотеки DLL.Visual Studio будет хранить пути к библиотекам в файлах * .csproj.user.Затем каждый раз, когда разработчик извлекает новую версию mySln.sln, он должен будет пройти и настроить пути ссылок в проектах, но он не будет должен сам устанавливать ссылки.Ваше решение перед сборкой может затем жить где угодно, или действительно может быть построено на CI-сервере, а выходные данные загружаться по мере необходимости.

0 голосов
/ 15 июня 2011

Этот макрос доступен в командной строке события сборки:

$ (SolutionDir)

...