'идентификация не найдена' при использовании gradle для исполнения c codeign - PullRequest
0 голосов
/ 25 января 2020

Я пытаюсь подписать свое приложение Java / JavaFX, используя кодировку с Gradle. Мой код gradle следующий:

exec {
  val codeSignArgs = listOf("-s", "'${macSigningKeyDeveloperIdApp}'", "--timestamp", "--options", "runtime", "--entitlements", "../../../entitlements.plist", "--deep", "-f", "--verbose", "UTMCoordinateConverter.app")
  logger.quiet("code sign args: $codeSignArgs")
  workingDir = macRel
  isIgnoreExitValue = true
  executable = codeSignTool.absolutePath
  args(codeSignArgs)
}

Где codeSignTool - /usr/bin/codesign, а macRel - каталог, в котором находится файл app, а macSigningKeyDeveloperIdApp - мой подписывающий идентификатор разработчика.

Gradle выдает мне следующий вывод:

> Task :codeSign
Inside codeSign
code sign args: [-s, 'Developer ID Application: Victor Ewert (XXXXXXXXXX)', --timestamp, --options, runtime, --entitlements, ../../../entitlements.plist, --deep, -f, --verbose, UTMCoordinateConverter.app]

BUILD SUCCESSFUL in 1s
1 actionable task: 1 executed
'Developer ID Application: Victor Ewert (XXXXXXXXXX)': no identity found
2:38:26 p.m.: Task execution finished 'codeSign'.

Странно то, что я могу нормально выполнить (эквивалентную) команду из командной строки, используя:

/usr/bin/codesign -s 'Developer ID Application: Victor Ewert (XXXXXXXXX)' --timestamp --options runtime --entitlements ../../../entitlements.plist --deep -f --verbose UTMCoordinateConverter.app

запустить из расположения app файла.

Я дважды и трижды проверил мой ID разработчика, и он выглядит нормально (проверено с помощью security find-identity -p codesigning -v login.keychain. Я также убедился, что моя цепочка для ключей входа в систему разблокирована. Я не думаю, что это проблема с моим ID разработчика.

Я предполагаю, что это как-то связано с тем, как gradle выполняет команду, но я не могу понять это.

...