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

Swift Package Manager添加DGCharts依赖后导入报错问题排查

问题描述

我创建了一个Swift Package Manager包,需要添加第三方包Charts。已在Package.swift文件中添加该依赖,且该依赖已显示在包依赖列表中,但尝试使用时出现No such module 'DGCharts'错误。

相关代码

Package.swift 文件

// swift-tools-version: 5.7
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription

let package = Package(
    name: "XYZFramework",
    platforms: [
        .iOS(.v15)
    ],
    products: [
        .library(
            name: "XYZFramework",
            targets: ["XYZFramework"]),
    ],
    dependencies: [
        .package(url: "https://github.com/danielgindi/Charts.git", .upToNextMajor(from: "5.0.0"))
    ],
    targets: [
        .target(
            name: "XYZFramework",
            dependencies: []
            /*,
            resources: [Resource.process("XYZFramework/Sources/XYZFramework/Resources/XYZFramework.xcassets")]*/),
        .testTarget(
            name: "XYZFrameworkTests",
            dependencies: ["XYZFramework"]),
    ]
)

SwiftUI 视图代码

import SwiftUI
import DGCharts

struct SwiftUIView: View {
    let chartView = PieChartView()

    var body: some View {
        Text("Hello, World!")
    }
}

#Preview {
    SwiftUIView()
}
问题原因与解决方法

核心原因

你仅在Package的全局依赖列表中声明了Charts包,但未将该包的具体产品关联到需要使用它的XYZFramework目标模块。SPM要求明确指定每个目标依赖的外部包产品,否则编译器无法定位对应模块。

解决步骤

  1. 修改Package.swift中的目标依赖
    在target的dependencies数组中添加Charts包的DGCharts产品,修改后的代码片段如下:

    .target(
        name: "XYZFramework",
        dependencies: [
            .product(name: "DGCharts", package: "Charts")
        ]
        /*,
        resources: [Resource.process("XYZFramework/Sources/XYZFramework/Resources/XYZFramework.xcassets")]*/),
    
  2. 清理缓存并重新构建

    • 在Xcode中按下Command + Shift + K清理项目构建缓存
    • 关闭Xcode并删除DerivedData目录(默认路径为~/Library/Developer/Xcode/DerivedData)
    • 重新打开项目并执行构建操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 09:17:22