You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CDK报错AttributeError: aws_cdk.cx_api无RuntimeInfo属性求助

AttributeError: module 'aws_cdk.cx_api' has no attribute 'RuntimeInfo'

问题原因

你遇到的这个错误确实是混用AWS CDK V1和V2版本导致的。CDK V1与V2的包结构存在本质差异:

  • V1中核心功能拆分在aws-cdk.core包,各云服务模块是独立的aws-cdk.aws-xxx包
  • V2则将所有核心功能和服务模块统一整合到aws-cdk-lib单包中

你的代码同时保留了V1风格的core导入,又可能混用了V2的服务依赖,导致内部模块依赖冲突。cx_api模块的结构在两个版本中完全不同,进而触发RuntimeInfo属性找不到的错误。

解决方案

1. 统一切换到CDK V2环境

先清理环境中的V1相关包,再安装V2的统一依赖:

# 卸载所有V1包
pip uninstall -y aws-cdk.core aws-cdk.aws-lakeformation aws-cdk.aws-iam aws-cdk.aws-sqs aws-cdk.aws-sns aws-cdk.aws-sns-subscriptions
# 安装V2核心包及构造依赖
pip install aws-cdk-lib constructs

2. 修正代码的导入与语法

将代码改为V2风格的导入方式,移除多余的core模块导入,同时修复代码中的语法问题:

from constructs import Construct
from aws_cdk_lib import (
    Duration,
    Stack,
    aws_iam as iam,
    aws_sqs as sqs,
    aws_sns as sns,
    aws_sns_subscriptions as subs,
    aws_lakeformation as lakeformation
)


class TablegrantsStack(Stack):

    def __init__(self, scope: Construct, construct_id: str, **kwargs) -> None:
        super().__init__(scope, construct_id, **kwargs)
        
        # 定义all_rows_wildcard(根据Lake Formation需求调整,示例用空对象)
        all_rows_wildcard = {}

        cfn_data_cells_filter = lakeformation.CfnDataCellsFilter(self, "MyCfnDataCellsFilter",
            database_name="test",
            name="MyCfnDataCellsFilter",
            table_catalog_id="189672731068",
            table_name="allergies",
            row_filter=lakeformation.CfnDataCellsFilter.RowFilterProperty(
                all_rows_wildcard=all_rows_wildcard,
                filter_expression="column='1234567890'"  # 闭合缺失的引号
            )
        )

代码里的两个细节修正:

  • 补充all_rows_wildcard的定义(需根据实际业务逻辑调整值)
  • 修复filter_expression未闭合的引号问题

社区情况

这个问题在CDK从V1迁移到V2的过程中非常普遍,大量开发者因未彻底切换包结构,残留了V1的导入或依赖,引发类似的属性找不到错误。只要完全统一使用V2版本的包和导入规范,这类冲突就能解决。

内容的提问来源于stack exchange,提问作者Chris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 14:27:30