Я хочу создать версию и файлы sha для моего проекта. Я использую метод переупаковки весны, чтобы построить свою банку.Сомнения с закрытием градиента
subproject.tasks.create(name: 'writeVersion') {
new File("$rootDir/upload/").mkdirs()
def sha = calcSha1(new File("$rootDir/deploy/${jar.archiveName}"));
def gitId = grgit.head().abbreviatedId
def shaFile = new File("$rootDir/upload/$rootProject.serviceName-$gitId-$sha"+".sha256");
def versionFile = new File("$rootDir/upload/version.txt");
shaFile.text = $sha;
versionFile.text = "$rootProject.serviceName-$gitId-$sha"
}
Благодаря dagezi
У меня есть следующие:
def calcSha1 = { file ->
MessageDigest md = MessageDigest.getInstance("SHA-1");
file.eachByte 4096, {bytes, size ->
md.update(bytes, 0, size);
}
return md.digest().collect {String.format "%02x", it}.join();
}
Everytime я пытаюсь запустить задачу, я получаю ошибку о том, что банку не найден. Я понимаю, что это происходит потому, что он пытается сгенерировать SHA во время настройки, но не уверен, как это решить.