Skip to content

Konfiguration

Volta verwendet mehrere Konfigurationsdateien zur Verwaltung Ihrer JavaScript-Toolchain. Diese Referenz erklärt die verfügbaren Konfigurationsoptionen und ihre Formate.

Projektkonfiguration

Projektspezifische Konfigurationen werden in der package.json-Datei Ihres Projekts unter dem volta-Schlüssel gespeichert.

Format

json
{
  "volta": {
    "node": "16.14.2",
    "npm": "8.5.0",
    "yarn": "1.22.19",
    "extends": "../shared-volta-config.json"
  }
}

Eigenschaften

EigenschaftTypBeschreibung
nodeStringDie Version von Node.js, die in diesem Projekt verwendet werden soll
npmStringDie Version von npm, die in diesem Projekt verwendet werden soll
yarnStringDie Version von Yarn, die in diesem Projekt verwendet werden soll
pnpmStringDie Version von pnpm, die in diesem Projekt verwendet werden soll
extendsStringPfad zu einer gemeinsam genutzten Volta-Konfigurationsdatei

Versionsformat

Versionsstrings in der volta-Konfiguration können die folgenden Formate verwenden:

  • Exakte Version: 16.14.2
  • Nur Hauptversion: 16
  • Haupt- und Nebenversion: 16.14
  • Versionsbereiche (npm semver): ^16.14.0
  • Tags: latest, lts

Gemeinsame Projektkonfiguration

Sie können gemeinsam genutzte Volta-Konfigurationen erstellen, die mehrere Projekte erweitern können. Dies ist nützlich für Organisationen, die Tool-Versionen über Projekte hinweg standardisieren möchten.

Format

json
{
  "node": "16.14.2",
  "npm": "8.5.0"
}

Das Format ist dasselbe wie der volta-Abschnitt in der package.json, aber auf der Stammebene der JSON-Datei.

Benutzerkonfiguration

Voltas Benutzerkonfiguration wird im Volta-Home-Verzeichnis gespeichert:

  • Unix: ~/.volta/
  • Windows: %LOCALAPPDATA%\Volta\

Tool-Speicher

Installierte Tools werden in strukturierten Verzeichnissen gespeichert:

  • Node.js: ~/.volta/tools/image/node/
  • Paketmanager: ~/.volta/tools/image/yarn/, ~/.volta/tools/image/npm/
  • Pakete: ~/.volta/tools/user/packages/

Hooks-Verzeichnis

Benutzerdefinierte Hooks werden in ~/.volta/hooks/ gespeichert. Siehe den Abschnitt Erweiterte Funktionen für weitere Details.

Umgebungsvariablen

Umgebungsvariablen bieten eine weitere Möglichkeit, Voltas Verhalten zu konfigurieren. Siehe die Seite Umgebungsvariablen für eine vollständige Referenz.

Konfigurationspriorität

Bei der Auflösung, welche Tool-Version verwendet werden soll, überprüft Volta Quellen in der folgenden Reihenfolge:

  1. Kommandozeilenargumente (z.B. volta run --node 14)
  2. Projektkonfiguration in der nächstgelegenen package.json mit einem volta-Abschnitt
  3. Standard-Tool-Versionen des Benutzers (festgelegt über volta install)
  4. Gebündelte Versionen (z.B. das npm, das mit Node.js geliefert wird)

Beispiele

Typische Projektkonfiguration

json
{
  "name": "my-project",
  "version": "1.0.0",
  "volta": {
    "node": "16.14.2",
    "npm": "8.5.0"
  },
  "dependencies": {
    // ...
  }
}

Erweiterte Konfiguration

json
// shared-config.json
{
  "node": "16.14.2",
  "yarn": "1.22.19"
}

// package.json
{
  "name": "my-project",
  "version": "1.0.0",
  "volta": {
    "extends": "./shared-config.json",
    "npm": "8.5.0"  // Überschreibt jede npm-Version in der erweiterten Konfiguration
  }
}

Workspace-Konfiguration

Für workspace-basierte Projekte gilt die Root-package.json-Konfiguration für alle Workspace-Pakete:

json
// Root package.json
{
  "name": "workspace-root",
  "volta": {
    "node": "16.14.2",
    "yarn": "1.22.19"
  },
  "workspaces": [
    "packages/*"
  ]
}

// packages/app/package.json - wird Node.js 16.14.2 und Yarn 1.22.19 verwenden
{
  "name": "app",
  "version": "1.0.0",
  // Kein volta-Abschnitt hier erforderlich
}