Я собираюсь перейти с CruiseControl.NET на Jenkins.
Моя проблема с процессом сборки — ошибка «QtMsBuild: не удалось найти qt.targets, qt.props; проект может быть построен неправильно». Я уже пробовал несколько решений, но безуспешно. Изменение методов сборки (NAnt/MSBuild) также приводит к тому же сообщению об ошибке. В Visual Studio в свойствах проекта (C/C++ > Дополнительные каталоги включения) я заметил, что QTDIR неизвестен, хотя он существует как переменная среды (например, вместо {QTDIR}\include я получаю только \include).
Я использую: Qt 5.9.0, MS Visual Studio 2015, инструменты Qt Visual Studio (V2.3.2)
В прошлом я пытался использовать более старую версию плагина Visual Studio Tools, как рекомендуют разработчики. Я также проверил пути и установил переменные среды. Предоставление Дженкинсу пути «C:\Пользователи\пользователь\AppData\Local\QtMsBuild» в качестве параметра ничего не меняет.
Я не хочу копировать файлы из "C:\Пользователи\пользователь\AppData\Local\QtMsBuild" в каждую директорию сборки, потому что в ccnet это работает.
Как я могу решить эту проблему?
Привет, спасибо за ваш комментарий. Процесс сборки в VS проходит успешно. Я добавил QTDIR и QtMsBuild в качестве свойств в Jenkins и расширил скрипт NAnt блоком <setenv>. Это решило проблему.
Рад узнать, что ваша проблема была решена, и спасибо, что поделились своим решением! Вы можете добавить его как ответ и отметить! Хорошего дня:)
Для меня это решение работает:
Пример:
QtMsBuild=C:\\Users\\user\\AppData\\Local\\QtMsBuild
QTDIR=D:\\Qt 5.9.0\\qtbase
<setenv>
Пример:
<setenv>
<variable name = "qtdir" value = "${QTDIR}" />
<variable name = "qtmsbuild" value = "${QtMsBuild}" />
</setenv>
Здравствуйте, вы проверили эта тема. А если собрать проект в VS, получится? После этого используйте командную строку разработчика, что в результате?