Допис
Діліться своїми знаннями.

Як опублікувати необроблений байтовий код в локальну мережу SUI
Розгортання смарт-контрактів на блокчейні SUI зазвичай передбачає компіляцію коду Move в байт-код і публікацію його в мережі. Незважаючи на те, що SUI CLI автоматизує більшу частину цього процесу, розробники іноді шукають вказівки щодо ручної обробки необробленого байтового коду, особливо в локальних середовищах тестування, якLocalnet. У цій статті наведено кроки щодо публікації необробленого байтового коду в SUI Localnet, використовуючи SUI CLI та інструменти розробки.
Передумови для локальної мережі SUI
Перш ніж зануритися в розгортання, переконайтеся, що у вас є наступне:
sui
SUI CLI встановлено: Дотримуйтесь офіційного посібника з встановлення, щоб налаштувати інструмент командного рядка. 2.Запуск локальної мережі: Використовуйте дsui-test-validator
війковий файл для запуску локальної мережі SUI для тестування (https://docs.sui.io/). 3.Перемістити пакет: Функціональний пакет Переміщення з налаштованими модулями та залежностями.
Що таке локальна мережа SUI
SUI Localnet - це середовище з пісочницею для тестування смарт-контрактів без ризику реальних активів. Це дозволяє розробникам імітувати взаємодії, налагоджувати логіку та перевіряти розгортання перед переходом до Devnet або Mainnet. Щоб запустити Localnet, виконайте:
sui-test-validator
Це ініціалізує локальний вузол валідатора, забезпечуючи новий полігон для тестування з попередньо фінансованими обліковими записами (https://docs.sui.io/)(https://scaf.gitbook.io/scaf/).
Як підготувати пакет переїзду?
Пакет Move складається з вихідного коду (sources/
), dependencies (deps/
) та артефактів збірки (build/
). Щоб компілювати необроблений байтовий код, зосередьтеся на каталозіbuild
, який містить файли — компільований бай .mv
товий код Move.
1.Створіть пакет:
sui client build <package_path>
Заміні <package_path>
ть на каталог, що містить ваш Move.toml
файл. build/
Це генерує байтовий код у папці.
2.Знайдіть байткод:
Перейдіть build/<package_name>/bytecode/
до, щоб знайти .mv
файли для кожного модуля. Вони представляють необроблений байтовий код, який потрібно опублікувати.
Публікація необробленого байтового коду в локальну мережу
sui client publish
У той час як SUI CLI узагальнює керування байтовими кодами, ви можете вручну публікувати необроблений байтовий код за допомогою команди. Ця команда приймає попередньо побудований байтовий код замість повторної компіляції пакета.
Покроковий посібник
1.Запуск локальної мережі: Переконайтеся, що локальний валідатор працює:
sui-test-validator
2.Опублікувати байткод:
Скористайтеся publish
командою з --bytecode
прапорцем, щоб вказати каталог необробленого байтового коду:
sui client publish --bytecode <bytecode_path>
За <bytecode_path>
мініть шляхом до вашого build/<package_name>/bytecode/
каталогу.
Приклад:
sui client publish --bytecode ./build/my_package/bytecode/
CLI надішле байтовий код до Localnet, створивши новий об'єкт пакета в ланцюжку (https://thelib.to/move-book)(https://sui.io/).
3.Перевірка розгортання: Перевірте деталі транзакції на виході CLI. Використовуйте SUI Explorer (якщо він доступний для Localnet) або запитуйте пакет через:
sui client get-package <package_id>
Типова помилка з Sui CLI
1.** Розбіжності версій CLI**
Якщо CLI не розпізнає команди, оновіть його, використовуючи рекомендований для вашої ОС метод. Уникайте ручних онов cargo
лень, щоб запобігти конфліктам залежностей (https://discord.gg/sui).
2.Помилки шляху байт-коду
Переконайтеся, що --bytecode
прапор вказує безпосередньо на каталог, що містить .mv
файли. Неправильні шляхи викличуть помилки компіляції.
3.Збої підключення до локальної мережі
Переконайтеся, що sui-test-validator
він активний і що ваша конфігурація CLI вказує на Localnet. Використання:
sui client envs
для перевірки активного середовища (https://docs.sui.io/).
Висновок
publish``--bytecode
Публікація необробленого байтового коду в SUI Localnet є основним процесом при використанні команди SUI CLI з прапором. Використовуючи ізольоване середовище Localnet, розробники можуть ітераційно тестувати контракти без витрат або ризиків. Хоча ручна маніпуляція байт-кодом можлива, дизайн платформи надає пріоритет автоматизації, забезпечуючи надійність та простоту для більшості випадків використання.
- Sui
- SDKs and Developer Tools
- Move
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Зароби свою частку з 1000 Sui
Заробляй бали репутації та отримуй винагороди за допомогу в розвитку спільноти Sui.
- Чому BCS вимагає точного порядку полів для десеріалізації, коли структури Move мають названі поля?53
- Помилки перевірки кількох джерел» у публікаціях модуля Sui Move - автоматичне вирішення помилок43
- Невдала операція Sui: об'єкти, зарезервовані для іншої транзакції25
- Як обмеження здібностей взаємодіють з динамічними полями в гетерогенних колекціях?05