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
{
"volta": {
"node": "16.14.2",
"npm": "8.5.0",
"yarn": "1.22.19",
"extends": "../shared-volta-config.json"
}
}
Eigenschaften
Eigenschaft | Typ | Beschreibung |
---|---|---|
node | String | Die Version von Node.js, die in diesem Projekt verwendet werden soll |
npm | String | Die Version von npm, die in diesem Projekt verwendet werden soll |
yarn | String | Die Version von Yarn, die in diesem Projekt verwendet werden soll |
pnpm | String | Die Version von pnpm, die in diesem Projekt verwendet werden soll |
extends | String | Pfad 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
{
"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:
- Kommandozeilenargumente (z.B.
volta run --node 14
) - Projektkonfiguration in der nächstgelegenen
package.json
mit einemvolta
-Abschnitt - Standard-Tool-Versionen des Benutzers (festgelegt über
volta install
) - Gebündelte Versionen (z.B. das npm, das mit Node.js geliefert wird)
Beispiele
Typische Projektkonfiguration
{
"name": "my-project",
"version": "1.0.0",
"volta": {
"node": "16.14.2",
"npm": "8.5.0"
},
"dependencies": {
// ...
}
}
Erweiterte Konfiguration
// 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:
// 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
}