gpt4 book ai didi

python - 尝试使用 python AWS CDK 创建空堆栈时返回 JSII 错误

转载 作者:行者123 更新时间:2023-12-04 08:38:11 25 4
gpt4 key购买 nike

aws cdk 在空堆栈上返回 jsii 错误。重现步骤在 hello world 级别,这让我认为我在某处存在版本不匹配。我已经重新安装了 aws cli、cdk 和 nodejs。关于寻找什么的任何建议?
重现步骤:

mkdir myfolder
cdk init --language python
.env\Scripts\activate.ps1
python -m pip install -r requirements.txt
cdk synth
返回错误和空堆栈:
(.env) p$[myfolder]> cdk synth                                                                                                                      d:\myfolder\.env\lib\site-packages\jsii\_embedded\jsii\jsii-runtime.js:13295
throw e;
^

Error: EOF: end of file, read
at Object.readSync (fs.js:592:3)
at SyncStdio.readLine (d:\myfolder\.env\lib\site-packages\jsii\_embedded\jsii\jsii-runtime.js:13278:33)
at InputOutput.read (d:\myfolder\.env\lib\site-packages\jsii\_embedded\jsii\jsii-runtime.js:13203:34)
at KernelHost.run (d:\myfolder\.env\lib\site-packages\jsii\_embedded\jsii\jsii-runtime.js:13021:32)
at Immediate.<anonymous> (d:\myfolder\.env\lib\site-packages\jsii\_embedded\jsii\jsii-runtime.js:13029:37)
at processImmediate (internal/timers.js:461:21) {
errno: -4095,
syscall: 'read',
code: 'EOF'
}
Resources:
CDKMetadata:
Type: AWS::CDK::Metadata
Properties:
Modules: aws-cdk=1.69.0,@aws-cdk/cloud-assembly-schema=1.69.0,@aws-cdk/core=1.69.0,@aws-cdk/cx-api=1.69.0,@aws-cdk/region-info=1.69.0,jsii-runtime=Python/3.7.4
Metadata:
aws:cdk:path: myfolder/CDKMetadata/Default
Condition: CDKMetadataAvailable
环境
  - **CLI Version      :aws-cli/2.0.61 Python/3.7.7 Windows/10 exe/AMD64
- **cdk Version:1.69.0 (build 2b474b9)
- **Node.js Version:v14.15.0
- **OS :Windows 10
- **Language (Version):python 3.7.4
当我第一次开始使用 cdk 时看到了这个错误。但是,'cdk synth' 显示了一个堆栈,所以我继续。我什至能够“cdk 部署”简单的堆栈。最终,随着代码变得稍微复杂一些,jsii 错误阻止了堆栈的创建。我创建的代码会在我的机器上引发错误,但不会在其他机器上出错。来自其他开发人员的工作 cdk 代码不会在我的机器上合成或部署堆栈。
到目前为止,我已经重新安装了 aws cli、node.js 和 cdk。任何想法 jsii 错误源自何处或如何修复它们?

最佳答案

对于 Windows 上的 AWS-CDK,AWS CDK 组记录的 jsii 中至少有一个错误。在 jsiiruntime 的深处(确切地说是第 13278 行),aws cdk 组有一条评论,其中包含指向 nodejs 错误报告的链接。我向 aws-cdk 报告了我的问题,这似乎是相关的。他们重现了这个错误并在 nodejs 上创建了一个错误报告。此错误报告包含指向其他错误报告的链接。 https://github.com/aws/aws-cdk/issues/11314
但我仍然需要一个解决方法。经过多次反复试验,以下 2 种解决方法应该适用于 Windows 上的 AWS-CDK。
解决方法 1:用 1.12 或 1.13 发行版替换站点包中的 jsii 1.14.x 发行版。将 1.14 换成 1.12 或 1.13 后,错误停止。获得发行版是一个技巧。你必须从没有升级或运行 pip 的人那里得到一个——我就是这样做的。
解决方法 2:将开发环境从 Windows 移到 linux 或 mac

关于python - 尝试使用 python AWS CDK 创建空堆栈时返回 JSII 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64694569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com