通过指定application.properties文件中的文件位置,传递服务帐户密钥文件(从GCP控制台生成)似乎很简单。然而,我尝试了以下所有选项:
1. spring.cloud.gcp.credentials.location=file:/home/my_user_id/mp6key.json
2. spring.cloud.gcp.credentials.location=file:src/main/resources/mp6key.json
3. spring.cloud.gcp.credentials.location=file:./main/resources/mp6key.json
4. spring.cloud.gcp.credentials.location=file:/src/main/resources/mp6key.json所有这些都导致了相同的错误:
java.io.FileNotFoundException: /home/my_user_id/mp6key.json (No such file or directory)是否有人建议我应该将密钥文件放在哪里,然后如何正确地指定文件的路径?
相同的程序在Ecplise中成功运行,使用GCP中的Pub/Sub处理(使用在GCP中生成的项目Id/服务帐户键)发布和订阅消息,但在部署到GCP上运行后,这些程序现在仍然存在上述问题。
发布于 2020-03-20 11:04:07
你试过跟踪这个快速启动吗?请试着仔细地跟随它,并解释一下你在完成快速发车时是否有任何错误。
无论如何,在运行Java脚本之前,请尝试在控制台上运行以下命令(请使用存储密钥的确切路径进行修改):
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/mp6key.json"如何在Java脚本中验证您的凭据?
发布于 2021-09-17 18:28:24
正如官方文档中提到的,凭据文件可以从许多不同的位置获得,如文件系统、类路径、URL等。
例如,如果服务帐户密钥文件作为src/main/resources/key.json存储在类路径中,则传递以下属性
spring.cloud.gcp.credentials.location=classpath:key.json如果密钥文件存储在本地文件系统的其他地方,请在属性值中使用file前缀。
spring.cloud.gcp.credentials.location=file:<path to key file>发布于 2021-12-27 16:21:49
我的台词是这样的:
spring.cloud.gcp.credentials.location=file:src/main/resources/[my_json_file]而且这个很管用。
如果我把它放在项目目录的根目录中,下面的内容也能工作:
spring.cloud.gcp.credentials.location=file:./[my_json_file]https://stackoverflow.com/questions/60762324
复制相似问题