对于正在运行的项目,我有以下文件夹结构serverless-plugin-typescript
:
<root>
- services
- common
- sample-service
sample-service
容纳 serverless.yml 和所有端点。common
托管一些实体/服务/实用程序/等。common
当我从into导入文件sample-service
然后运行脱机或打包命令时,输出文件夹结构从此更改(这是我想要的):
<build root>
- endpoints
- ...files
为此(这是我不想要的):
<build root>
- common
- ...files
- sample-service
- endpoints
- ...files
如果我尝试访问 API 端点,我会收到一条错误消息,指出它找不到我的处理程序文件(因为它位于sample-service/endpoints
目录中而不是根endpoints
目录中)。serverless-offline
在传递--location
参数并指定sample-service
文件夹的情况下,我可以解决这个问题。但是当我将它部署到 AWS 时,我遇到了同样的问题,即它找不到端点,因为它是一个比应有的更深的文件夹。
我曾尝试使用 Typescript 项目引用,但运气不佳。我也尝试过使用serverless-webpack
,但不幸的是其中存在相当大的内存泄漏,这就是为什么我继续尝试不同的构建系统的原因。
是否有人对我如何更改 Typescript 或无服务器插件的配置以模仿我正在寻找的构建结构(第一个)有任何见解?或者也许我没有以正确的方式实现项目引用?