Intellij中的AWSToolkit,环境变量不起作用

时间:2020-09-30 21:10:57

标签: java intellij-idea aws-lambda environment-variables

我有一个用Java编写的AWS lambda函数,该函数需要访问环境变量。我可以在AWS上设置它们,并且可以使用lambda函数中的以下代码行在将环境变量部署到AWS时访问环境变量:

System.getenv("myVariable");

对于本地开发,我将相同的环境变量放入lambda的运行配置中。不幸的是,当我尝试在本地访问环境变量时,我只会得到空值。我肯定做错了,因为我确定其他人一定在使用环境变量。

1 个答案:

答案 0 :(得分:0)

因此,在花了整整一天的时间之后,我发帖30分钟后,我终于找到了答案。

似乎您不能仅将环境变量添加到AWS lambda的运行时配置中。相反,您还必须将其作为环境变量添加到template.yaml。以下是配置了三个环境变量(myvariable1,myvariable2,myvariable3)的样例template.yaml。希望这可以节省一整天的时间,而我却花了我很多时间。

`

AWSTemplateFormatVersion: '2010-09-09'
Transform: 'AWS::Serverless-2016-10-31'
Description: My test project.
Resources:
  MyAwesomeFunction:
    Type: 'AWS::Serverless::Function'
    Properties:
      FunctionName: MyAwesomeFunction
      Handler: com.lambda.MyAwesome
      Runtime: java11
      CodeUri: .
      Description: Does some really amazing things.
      MemorySize: 512
      Timeout: 30
      Environment:
        Variables:
          myvariable1:
          myvariable2:
          myvariable3:

`