public void download(Dependency dependency, Path file) throws DependencyDownloadException {
        try {
            Files.write(file, download(dependency));
        } catch (IOException e) {
            throw new DependencyDownloadException(e);
        }
    }
Downloads the {@code dependency} to the {@code file}, ensuring the
downloaded bytes match the checksum.

@param dependency the dependency to download
@param file the file to write to
@throws DependencyDownloadException if unable to download
common/src/main/java/me/lucko/luckperms/common/dependencies/DependencyRepository.java