Почему Бакминстер не разрешает мой аргумент JVM?

У меня есть работа Дженкинса, которая использует Бакминстер для создания продукта затмения.

В начале у меня есть "Параметр расширенного выбора", в котором можно выбрать "клиентский" ключ.

В конфигурации Бакминстера я использую эту переменную "customer", чтобы выбрать правильный запрос:

import '$ {WORKSPACE} / source / scodi-customer / ${customer} /server/features/ch.scodi. ${customer}.server.feature / site.cquery'

Поскольку переменная "customer" по умолчанию недоступна в командах, я добавил в "Аргументы JVM" следующее:

-Dcustomer = $ {клиент}

Раньше все это работало хорошо, но теперь я обновил сервер и среду сборки с Java 1.7 32-Bit на Java 1.8 64-Bit. С тех пор я получаю следующую ошибку при попытке построить:

java.io.FileNotFoundException: [путь к заданию]\source\scodi-customer\${customer}\server\features\ch.scodi.${customer}.server.feature\site.cquery (системе не удается найти путь указано)

До того как переменная была разрешена нормально.
Является ли это проблемой бадминстера или java8, не имея возможности разрешить переменную ${customer}? Может быть, есть другой (более чистый) способ передачи переменной в конфигурацию Бакминстера?

Изменить: я провел дополнительное тестирование и добавил следующее к аргументам JVM, я получаю то же исключение, относящееся к отсутствующему ${customer}. Мне кажется, что аргументы JVM игнорируются.

-Dcustomer = КЛИЕНТ

1 ответ

Решение

Наконец я нашел обходной путь.

Мне пришлось переименовать мою переменную "customer" в "CUSTOMER", теперь она разрешена в командной области buckminster.

От:

import '$ {WORKSPACE} / source / scodi-customer / $ {customer} /server/features/ch.scodi. $ {customer}.server.feature / site.cquery'

Для того, чтобы:

import '$ {WORKSPACE} / source / scodi-customer / $ {CUSTOMER} /server/features/ch.scodi. $ {CUSTOMER}.server.feature / site.cquery'

Также мои параметры JVM от:
-Dcustomer = $ {клиент}
Для того, чтобы:
-Dcustomer = $ {КЛИЕНТ}

Обнаруженные параметры JVM не имеют отношения к интерфейсу команды buckminster, но используются позже в файлах "cspex".

Запуск Jenkins на компьютере под управлением Windows может вызвать эту проблему...
Таким образом, настоящей проблемой было присвоение имени "Расширенного параметра выбора", а не заглавных букв.

Другие вопросы по тегам