Обычно , порядок сборки сохраняется в файле решения (.sln
файл) следующим образом:
Поэтому, когда вы используете это, вы должны построить все решение с этим файлом. Но
Однако в vs IDE, когда вы создаете один проект, он может следовать указанному порядку сборки, но в командной строке msbuild msbuild projectA.xxproj
не создает сначала B, а затем построить A в соответствии с указанными зависимостями. Это также уникально для vs ides, хотя зависимости сборки хранятся в xxx.sln
, а не в отдельных xxx.proj
файлах.
Если все решение (msbuild xxx.sln
) не построено в командной строке MSBuild, оно будет построено последовательно.
Это ситуация, которая обычно вызывает эту разницу.
Но по какой-то причине, когда я пытаюсь перестроить все решение, это не тот порядок, в котором Visual Studio на самом деле пытается собрать проекты.
Интересно, что вы сделали вызвало это, и если вы создадите все решение (файл xxx.sln
), этой проблемы не будет. Поэтому я хочу знать, какой формат сборки или что вы сделали с вашим решением.
Поскольку MSBuild не может построить wixproj
файл, вам следует использовать VS IDE или devenv xxx. sln / build для создания всего решения.
Предложение
В качестве предложения вы можете использовать Project Reference вместо указания сборки order, который установит порядок в каждом xxx.proj
, а не в xxx.sln
файле. Это будет более надежным и безопасным.
1) Удалите заказы на сборку в Project Dependencies (щелкните правой кнопкой мыши на решении)
2) Щелкните правой кнопкой мыши проект WIX -> References
-> Add Reference
-> Projects
-> Выберите Project A
и Project B
.
3) Щелкните правой кнопкой мыши Project A -> References
-> Add Reference
-> Project
-> Project B
.
Вдобавок , если это вам не поможет, поделитесь с нами, что вы сделали, чтобы вызвать эту проблему, и о любых действиях, которые ее вызвали, чтобы это помогло нам быстрее устранить вашу проблему.
Обновление 1
Просто подсказка от Эри c, и спасибо ему за то, что поделился решением и результатом теста.
Решение
Сначала , удалите все зависимости проекта, а затем снова добавьте их, после чего проблема устранена. Это могло быть проблемой для этого проекта, поскольку он был перенесен из старого VS2010 .