迁移到 Kit

如果你来自 @solana/web3.js(v1)、@solana/wallet-adapter-* 或早期的 framework-kit 包(@solana/client@solana/react-hooks@solana/web3-compat),这些方案已被取代。新应用直接基于 @solana/kit 和 kit 插件构建。本页将你已熟悉的概念映射到对应的 Kit 等价物。

概念映射

web3.js v1 / wallet-adapterKit
new Connection(url)createSolanaRpc(url),或客户端上的 .use(solanaRpc({ rpcUrl }))
PublicKeyAddress — 使用 address("...") 强制转换字符串
KeypairgenerateKeyPairSigner()@solana/kit-plugin-signer 插件
SystemProgram.transfer(...)来自 @solana-program/systemgetTransferSolInstruction(...)
LAMPORTS_PER_SOL 数学运算来自 @solana/kitlamports(...)
Transaction / VersionedTransaction由交易规划器构建和打包的交易消息
sendAndConfirmTransaction(...)client.sendTransaction([...])(规划器负责签名、发送和确认)
@solana/wallet-adapter-*@solana/kit-plugin-wallet + Wallet Standard 发现机制

来自 web3.js?

如果你维护着一个大型的 @solana/web3.js v1 代码库,且目前还无法完全重写为 Kit,web3.js v3 就是过渡桥梁。它目前以 @solana/web3.js@rc3.0.0-rc 版本线)发布,并在 @solana/kit 底层之上重建了经典的基于类的 API——ConnectionKeypairTransaction。由于它基于 Kit 构建,互操作性极强:PublicKeyAddress 的已废弃别名,而 v3 的 Keypair 在结构上满足 Kit 的 KeyPairSigner,因此可以直接传入 Kit API、插件和 Codama 生成的客户端。

v3 仍处于候选发布阶段——请固定确切版本,并预期各 RC 版本之间可能存在一些 API 变动。它是一条遗留互操作路径,并非新项目的默认选择;新应用应直接基于 Kit 构建。有关迁移本身,请参阅官方 web3.js v1 → v3 迁移指南

钱包

Kit 不使用 wallet-adapter。@solana/kit-plugin-wallet 会自动发现符合 Wallet Standard 的钱包,并通过 client.walletReact hooks 将其暴露出来。现代钱包(Phantom、Solflare、Backpack 等)均通过 Wallet Standard 进行自我声明,因此无需为每个钱包单独安装适配器包。

您也可以使用预构建工具,例如 @solana/connector,它直接使用 Kit 原语来连接钱包。

仍在使用 wallet-adapter?

如果您维护的应用基于 @solana/wallet-adapter-* 构建,且尚未准备好迁移,wallet-adapter 仓库 仍是该技术栈的参考资源。对于所有新项目,建议优先使用 Kit 钱包插件。

下一步

Is this page helpful?

Table of Contents

Edit Page
©️ 2026 Solana 基金会版权所有