我有一个带有GAE配置GCS存储桶的Java8 GAE项目。我有一组文件存储在GCS的“子目录”中。我可以使用gsutil
访问这些文件,如下所示:
gsutil cp gs://gae-java8-project.appspot.com/files/109.avro .
但是,我无法使用com.google.appengine.tools.cloudstorage.GcsService
获取这些文件。我在StackDriver日志中看到的错误是:
java.io.FileNotFoundException:
Could not find: GcsFilename(gae-java8-project.appspot.com, /files/109.avro)
以下是我的相关代码:
int x = ...
GcsFilename fileName =
new GcsFilename(
"gae-java8-project.appspot.com",
String.format("/files/%d.avro", x));
GcsInputChannel readChannel = gcsService.openPrefetchingReadChannel(fileName, 0, BUFFER_SIZE);
InputStream is = Channels.newInputStream(readChannel);
byte[] bytes = IOUtils.toByteArray(is);
HALP?