在NetBeans的https://developers.google.com/drive/web/quickstart/java?hl=hu上运行Java快速入门示例时,我收到错误代码:
Jun 04, 2015 12:12:11 AM com.google.api.client.util.store.FileDataStoreFactory setPermissionsToOwnerOnly
WARNING: unable to change permissions for everybody:
C:\Users\Quibbles\credentials\drive-api-quickstart我做错了什么?
编辑:这是完整的错误消息。
Jun 04, 2015 5:11:39 PM com.google.api.client.util.store.FileDataStoreFactory setPermissionsToOwnerOnly
WARNING: unable to change permissions for owner: C:\Users\Quibbles\.credentials\drive-api-quickstart
Exception in thread "main" java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
at DriveQuickstart.authorize(DriveQuickstart.java:64)
at DriveQuickstart.getDriveService(DriveQuickstart.java:87)
at DriveQuickstart.main(DriveQuickstart.java:96)
Java Result: 1发布于 2016-01-15 03:11:24
有相同的问题,并浪费了几个小时,才意识到“无法更改所有者的权限: C:\Users\Quibbles.credentials\drive-api-quickstart”
只是一个警告。
真正的问题是这里的空指针。
InputStream in =
DriveQuickstart.class.getResourceAsStream("/client_secret.json");在我的例子中,这一行是问题所在。"in“是null,因此是null指针。
InputStream in = new FileInputStream("<Full Path>\\client_secret.json"); 这解决了我的问题。
发布于 2016-01-16 11:49:49
实际问题是谷歌的setPermissionsToOwnerOnly应用编程接口代码中的一个错误
该代码仅适用于基于Linux/Unix的系统,而不适用于基于Windows ACL的系统。
您可以忽略该警告,或者编写您自己的DataStore类来为Windows正确设置权限。
我也会试着在Google上提交一个bug。
发布于 2016-02-22 19:14:11
我在Eclipse中也遇到了同样的问题。这里有一个解决方案:
C:/Users/<username>.credentials/calendar-java-quickstart.jsonbin/main/resources/client_secret.json你现在可以自由地跑了。
https://stackoverflow.com/questions/30634827
复制相似问题