使用 vs 代码在 Spring Boot 中设置 GCP 环境变量

Posted

技术标签:

【中文标题】使用 vs 代码在 Spring Boot 中设置 GCP 环境变量【英文标题】:Setting GCP environment variable in Spring boot with vs code 【发布时间】:2020-10-06 11:55:09 【问题描述】:

我正在尝试设置 GOOGLE_APPLICATION_CREDENTIALS 但不断收到此错误

java.io.IOException:应用程序默认凭据不可用。如果在 Google Compute Engine 中运行,它们就可用。否则,必须定义环境变量 GOOGLE_APPLICATION_CREDENTIALS 指向定义凭据的文件

我已在我的应用程序属性中定义:

spring.cloud.gcp.project-id=PROJECT_ID
spring.cloud.gcp.credentials.location=lasspath:/src/main/resources/key.json

在pom文件中添加依赖:

 <dependency>
     <groupId>com.google.cloud</groupId>
     <artifactId>google-cloud-dialogflow</artifactId>
     <version>1.0.0</version>
  </dependency>

尝试从终端(windows)也没有运气:

> set GOOGLE_APPLICATION_CREDENTIALS="C:\Users\user\Desktop\****\******\src\main\resources\key.json"

【问题讨论】:

【参考方案1】:

在终端运行解决:

$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\user\Desktop\*****\****\src\main\resources\*****.json"

除了在 GCP 的 IAM 部分设置相关角色,因为我在之后遇到了 PERMISSION_DENIED 错误

【讨论】:

【参考方案2】:

如果您安装了 Google Cloud SDK,您可以在控制台中运行此命令来设置应用默认凭据:

gcloud auth 应用程序-默认登录

请在文档中查看更多详细信息: https://cloud.google.com/sdk/gcloud/reference/auth/application-default

【讨论】:

以上是关于使用 vs 代码在 Spring Boot 中设置 GCP 环境变量的主要内容,如果未能解决你的问题,请参考以下文章

在 Spring Boot 微服务的 JWT 令牌生成中设置两个主题

在spring boot微服务中设置JWT令牌生成中的两个主题

Spring 如何在 Spring Boot 中设置数据源

如何在 Spring Boot 中设置 UTF-8 字符编码?

使用 Spring Boot 和 Spring JDBC 在 oracle 中设置默认模式 = SOMETHING

在 Spring Boot 中设置响应头