我正在使用appengine-gcs-client-0.5并在调用GcsService.createOrReplace和GcsOutputChannel.close时在dev_appserver中看到InvocationTargetExceptions。
似乎对storeBlob的调用没有适当的权限,因为应用服务器在com.google.appengine.api.blobstore.dev.FileBlobStorage.storeBlob中获得了AccessControlException:
java.security.AccessControlException: access denied ("java.io.FilePermission" "/tmp/1440435923000-0/encoded_gs_key:<some key>" "write")
我需要做什么才能使它正常工作?
最佳答案
appengine-gcs-client-0.5删除了对不推荐使用的Files API的依赖性,但是SDK尚未获得存储BlobStorage服务文件所需的权限。作为在发布下一个SDK版本之前的解决方法,您可以传递一个标志来为Blobstore服务配置内存支持的存储,如下所示:
dev_appserver.sh --jvm_flag = -Dblobstore.no_storage = true
这仅对于dev_appserver是必需的-生产应用程序将不会出现此问题。
关于java - InvocationTargetException使用appengine-gcs-client-0.5 dev_appserver存储文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32236614/