Spec-Zone.ru › Deno 2

deno x

deno x запускает пакет из npm или JSR без постоянной установки. Это похоже на npx в экосистеме npm.

Установка псевдонима dx

Для удобства можно установить deno x как отдельный двоичный файл dx, который по умолчанию запускается со всеми разрешениями:

›_
deno x --install-alias

Затем используйте его напрямую:

›_
dx npm:create-vite my-app

Вы можете настроить имя псевдонима:

›_
deno x --install-alias=denox

Основные сведения об использовании

Запустите пакет npm:

›_
deno x npm:create-vite my-app

Запустите пакет JSR:

›_
deno x jsr:@std/http/file-server

Указание пакета отдельно от исполняемого файла

Некоторые пакеты npm предоставляют несколько исполняемых файлов — например, typescript включает и tsc, и tsserver. Начиная с Deno 2.8, --package (-p) позволяет независимо выбирать пакет и исполняемый файл, следуя соглашению npx -p <package> <binary>:

›_
# Run `tsc` from the typescript package
deno x -p typescript tsc

# Pin the package version
deno x -p typescript@5 tsc

Прежняя форма deno x typescript/tsc по-прежнему работает.

Как это работает

deno x загружает пакет в глобальный кэш (если его там ещё нет), определяет точку входа исполняемого файла пакета и запускает его. Пакет не добавляется в deno.json или package.json вашего проекта.

Создание пакета для запуска с помощью deno x

Способ, которым deno x находит исполняемый файл, зависит от реестра:

  • Пакеты npm предоставляют исполняемые файлы через поле bin в package.json. deno x npm:<package> запускает исполняемый файл пакета по умолчанию, а deno x -p <package> <binary> (или deno x npm:<package>/<binary>) позволяет выбрать определённый файл, если пакет содержит несколько. Чтобы ваш пакет npm можно было запускать, опубликуйте его с записью bin, как это делается для npx.
  • Пакеты JSR запускаются, если указать deno x на экспорт, который выполняется при импорте, например deno x jsr:@std/http/file-server. Чтобы ваш пакет JSR можно было запускать, предоставьте точку входа как экспорт модуля (защитите побочные эффекты на верхнем уровне с помощью import.meta.main, чтобы модуль по-прежнему можно было импортировать как библиотеку), а затем укажите в документации под путь, который следует запускать, например deno x jsr:@you/tool/cli.

Если вы хотите, чтобы инструмент был доступен как постоянная команда, а не запускался по запросу, установите его с помощью deno install или скомпилируйте в автономный исполняемый файл. Полное описание процесса см. в разделе Создание приложений командной строки, а сведения о публикации в JSR — в разделе Публикация модулей.

Разрешения

Запущенный пакет использует указанные вами разрешения:

›_
deno x --allow-read --allow-net npm:serve .

Или предоставьте все разрешения:

›_
deno x -A npm:create-vite my-app
Использование командной строки:
deno x [OPTIONS] [SCRIPT_ARG]...

Запуск исполняемого файла из npm или jsr, как с помощью npx

Параметры проверки типов

--check<CHECK_TYPE>необязательно

Включить проверку типов. Эта подкоманда по умолчанию не проверяет типы; добавьте --check=all, чтобы также проверять удалённые модули. Или воспользуйтесь подкомандой 'deno check'.

--no-check<NO_CHECK_TYPE>необязательно

Пропустить проверку типов. Если задано значение "remote", диагностические ошибки удалённых модулей будут игнорироваться.

Параметры управления зависимостями

--cached-only

Требовать, чтобы удалённые зависимости уже находились в кэше.

--frozen<BOOLEAN>необязательно

Завершить работу с ошибкой, если файл блокировки устарел.

--import-map<FILE>

Загрузить файл карты импортов из локального файла или по удалённому URL.

--lock<FILE>необязательно

Проверить указанный файл блокировки. (Если значение не задано, используется "./deno.lock".)

--no-lock

Отключить автоматический поиск файла блокировки.

--no-npm

Не разрешать зависимости npm.

--no-remote

Не разрешать удалённые модули.

--node-modules-dir<MODE>необязательно

Выбрать режим каталога node_modules для пакетов npm (не путь). Возможные значения: auto (создать локальный каталог node_modules и установить в него пакеты npm), manual (использовать существующий локальный каталог node_modules без изменений), none (не использовать локальный каталог node_modules; разрешать пакеты npm из глобального кэша). Если флаг указан без значения, по умолчанию используется auto.

--node-modules-linker<MODE>

Задать режим компоновщика для пакетов npm (изолированный или hoisted).

--reload, -r<CACHE_BLOCKLIST>необязательно

Перезагрузить кэш исходного кода (повторно скомпилировать TypeScript). Если значение не указано, перезагружается всё. Передайте список спецификаторов, разделённых запятыми, чтобы перезагрузить только соответствующие модули; npm: перезагружает все модули npm; npm:chalk перезагружает один модуль npm; jsr:@std/http/file-server,jsr:@std/assert/assert-equals перезагружает определённые модули.

--vendor<vendor>необязательно

Включить или отключить использование локальной папки vendor для удалённых модулей и папки node_modules для пакетов npm.

Параметры

--allow-scripts<PACKAGE>необязательно

Разрешить выполнение сценариев жизненного цикла npm для указанных пакетов. Примечание: сценарии выполняются только при использовании каталога node_modules (--node-modules-dir).

--cert<FILE>

Загрузить центр сертификации из файла в кодировке PEM.

--conditions<conditions>

Используйте этот аргумент, чтобы задать пользовательские условия для экспортов пакетов npm. Также можно использовать переменную окружения DENO_CONDITIONS. .

--config, -c<FILE>

Настроить различные аспекты deno, включая TypeScript, линтинг и форматирование кода. Обычно файл конфигурации называется deno.json или deno.jsonc и обнаруживается автоматически; в этом случае этот флаг не нужен.

--env-file<FILE>необязательно

Загрузить переменные окружения из локального файла. Используется только первая переменная окружения с заданным ключом. Существующие переменные окружения процесса не перезаписываются, поэтому значения переменных с теми же именами, уже присутствующих в окружении, сохраняются. Если в файле .env несколько объявлений одной переменной окружения, применяется первое найденное. Порядок определяется последовательностью файлов, переданных в качестве аргументов.

--ignore-scripts<PACKAGE>необязательно

Не запускать сценарии жизненного цикла npm для указанных пакетов.

--install-alias<install-alias>необязательно

Создать псевдоним dx, чтобы запускать dx вместо deno x .

--location<HREF>

Значение globalThis.location, используемое некоторыми веб-API.

--minimum-dependency-age<minimum-dependency-age>

(Нестабильный параметр) Возраст в минутах, длительность в формате ISO-8601 или абсолютная временная метка RFC3339 (например, '120' — два часа, 'P2D' — два дня, '2025-09-16' — дата отсечения, '2025-09-16T12:00:00+00:00' — время отсечения, '0' — отключить).

--no-config

Отключить автоматическую загрузку файла конфигурации.

--package, -p<package>

Пакет для установки (используйте, если имя исполняемого файла отличается от имени пакета).

--preload<FILE>

Список файлов, которые будут выполнены до основного модуля.

--require<FILE>

Список модулей CommonJS, которые будут выполнены до основного модуля.

--seed<NUMBER>

Задать начальное значение генератора случайных чисел.

--v8-flags<V8_FLAGS>необязательно

Чтобы просмотреть список всех доступных флагов, используйте --v8-flags=--help. Флаги также можно задать с помощью переменной окружения DENO_V8_FLAGS. Флаги, указанные с этим параметром, добавляются после значений переменной окружения DENO_V8_FLAGS.

--yes, -y

Считать подтверждение полученным для всех запросов.

Параметры отладки

--inspect<HOST_PORT>необязательно

Активировать инспектор на host:port [по умолчанию: 127.0.0.1:9229]. Host и port указывать необязательно. При указании порта 0 будет назначен случайный свободный порт.

--inspect-brk<HOST_PORT>необязательно

Активировать инспектор на host:port, дождаться подключения отладчика и остановиться в начале пользовательского скрипта.

--inspect-wait<HOST_PORT>необязательно

Активировать инспектор на host:port и дождаться подключения отладчика, прежде чем выполнять пользовательский код.

Последнее обновление: 18 июня 2026 г.

© 2018–2025 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/runtime/reference/cli/x

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API