Code review comment: Or would it be better to let the method throw an IOException?

Code under review:
private static List<ArtifactInformation> getArtifacts(List<String> stagingFiles) {
    Set<String> pathsToStage = Sets.newHashSet(stagingFiles);
    ImmutableList.Builder<ArtifactInformation> artifactsBuilder = ImmutableList.builder();
    for (String path : pathsToStage) {
      File file = new File(path);
      
      if (file.exists()) {
        ArtifactInformation.Builder artifactBuilder = ArtifactInformation.newBuilder();
        artifactBuilder.setTypeUrn(BeamUrns.getUrn(StandardArtifacts.Types.FILE));
        artifactBuilder.setRoleUrn(BeamUrns.getUrn(StandardArtifacts.Roles.STAGING_TO));
        artifactBuilder.setRolePayload(
            RunnerApi.ArtifactStagingToRolePayload.newBuilder()
                .setStagedName(createStagingFileName(file))
                .build()
                .toByteString());
        if (file.isDirectory()) {
          File zippedFile;
          HashCode hashCode;
          try {
            zippedFile = zipDirectory(file);
            hashCode = Files.asByteSource(zippedFile).hash(Hashing.sha256());
          } catch (IOException e) {
            throw new RuntimeException(e);
          }
          artifactsBuilder.add(
              artifactBuilder
                  .setTypePayload(
                      RunnerApi.ArtifactFilePayload.newBuilder()
                          .setPath(zippedFile.getPath())
                          .setSha256(hashCode.toString())
                          .build()
                          .toByteString())
                  .build());
        } else {
          HashCode hashCode;
          try {
            hashCode = Files.asByteSource(file).hash(Hashing.sha256());
          } catch (IOException e) {
            throw new RuntimeException(e);
          }
          artifactsBuilder.add(
              artifactBuilder
                  .setTypePayload(
                      RunnerApi.ArtifactFilePayload.newBuilder()
                          .setPath(file.getPath())
                          .setSha256(hashCode.toString())
                          .build()
                          .toByteString())
                  .build());
        }
      }
    }
    return artifactsBuilder.build();
  }

Line commented on: throw new RuntimeException(e);

Revised code:
private static List<ArtifactInformation> getArtifacts(List<String> stagingFiles) {
    Set<String> pathsToStage = Sets.newHashSet(stagingFiles);
    ImmutableList.Builder<ArtifactInformation> artifactsBuilder = ImmutableList.builder();
    for (String path : pathsToStage) {
      File file = new File(path);
      
      if (file.exists()) {
        ArtifactInformation.Builder artifactBuilder = ArtifactInformation.newBuilder();
        artifactBuilder.setTypeUrn(BeamUrns.getUrn(StandardArtifacts.Types.FILE));
        artifactBuilder.setRoleUrn(BeamUrns.getUrn(StandardArtifacts.Roles.STAGING_TO));
        artifactBuilder.setRolePayload(
            RunnerApi.ArtifactStagingToRolePayload.newBuilder()
                .setStagedName(createStagingFileName(file))
                .build()
                .toByteString());
        if (file.isDirectory()) {
          File zippedFile;
          HashCode hashCode;
          try {
            zippedFile = zipDirectory(file);
            hashCode = Files.asByteSource(zippedFile).hash(Hashing.sha256());
          } catch (IOException e) {
            throw new RuntimeException(e);
          }
          artifactsBuilder.add(
              artifactBuilder
                  .setTypePayload(
                      RunnerApi.ArtifactFilePayload.newBuilder()
                          .setPath(zippedFile.getPath())
                          .setSha256(hashCode.toString())
                          .build()
                          .toByteString())
                  .build());
        } else {
          HashCode hashCode;
          try {
            hashCode = Files.asByteSource(file).hash(Hashing.sha256());
          } catch (IOException e) {
            throw new RuntimeException(e);
          }
          artifactsBuilder.add(
              artifactBuilder
                  .setTypePayload(
                      RunnerApi.ArtifactFilePayload.newBuilder()
                          .setPath(file.getPath())
                          .setSha256(hashCode.toString())
                          .build()
                          .toByteString())
                  .build());
        }
      }
    }
    return artifactsBuilder.build();
  }