[GAE Java]:警告:不使用任何凭据
在Java API中,他们使用[GAE Java]:警告:不使用任何凭据,java,scala,google-app-engine,google-cloud-datastore,Java,Scala,Google App Engine,Google Cloud Datastore,在Java API中,他们使用DatastoreHelper.getOptionsfromEnv 但这就产生了警告 WARNING: Not using any credentials 最终导致: DatastoreException(null): beginTransaction 401 我将环境变量设置为以下值: export DATASTORE_DATASET={Project-ID} export DATASTORE_HOST="https://www.googleapis.com/
DatastoreHelper.getOptionsfromEnv
但这就产生了警告
WARNING: Not using any credentials
最终导致:
DatastoreException(null): beginTransaction 401
我将环境变量设置为以下值:
export DATASTORE_DATASET={Project-ID}
export DATASTORE_HOST="https://www.googleapis.com/datastore/v1/datasets/{Project-ID}"
export DATASTORE_SERVICE_ACCOUNT="{email address}"
export DATASTORE_PRIVATE_KEY_FILE="{path to local p12 keyfile}"
但当我尝试查看凭据时:
println("Datastore helper: " +DatastoreHelper.getOptionsfromEnv
.dataset(datasetId).build().getCredential)
我得到null
,可能缺少什么
还有一种方法可以在项目内部设置凭据(而不是使用
getOptionsfromEnv
)?问题是,即使我使用了
source ~/.bash_profile
为了刷新我的环境变量,echo
命令显示它们确实被更新了,显然我需要重新启动我的终端(使用macosx
),以便它们也被更新为sbt
和Scala
我不确定为什么会出现这种情况,如果这是Scala的具体情况,但现在我设法通过了身份验证并与服务器通信
我使用的本地安装解决了这个问题,但仍然存在相同的问题。您运行的是什么环境(计算引擎、本地、AWS)?