为默认的 IntelliJ IDEA Java helloworld 应用程序(在创建新的 AWS Lambda 项目时创建)设置调试配置时,显示以下响应:
Error: Cannot find handler 'helloworld.App::handleRequest' in project."
为了解决这个问题,我尝试在 template.yaml 中编辑“Handler”元素以包含文件路径,但没有成功。
Resources:
HelloWorldFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: HelloWorldFunction
Handler: helloworld.App::handleRequest
我注意到 Python AWS Lambda helloworld 项目(在 PyCharm 对应项中)要求我更改根项目文件夹(允许找到处理程序),但是,我似乎无法通过 IntelliJ 中的 Java 对应项实现此目的。
默认的项目文件结构如下:
bash
├── README.mdH
├── HelloWorldFunction
│ ├── pom.xml
│ └── src
│ ├── main
│ │ └── java
│ │ └── helloworld
│ │ ├── App.java
│ │ └── GatewayResponse.java
│ └── test
│ └── java
│ └── helloworld
│ └── AppTest.java
└── template.yaml
template.yaml 文件的相关部分包含:
Resources:
HelloWorldFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: HelloWorldFunction
Handler: helloworld.App::handleRequest
Runtime: java8
Events:
HelloWorld:
Type: Api
Properties:
Path: /hello
Method: get
App.java 文件包含类
public class App implements RequestHandler<Object, Object> {
...
}
我希望调试配置指向正确的处理程序(为“helloworld.App::handleRequest”),这样我就可以在我的本地机器上运行该项目。
最佳答案
关于java - IntelliJ IDEA Config 在默认 'helloworld' 应用程序中找不到 AWS Lambda 处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55577012/