Erweiterungen veröffentlichen
Nachdem Sie eine qualitativ hochwertige Erweiterung erstellt haben, können Sie diese im VS Code Extension Marketplace veröffentlichen, damit andere Ihre Erweiterung finden, herunterladen und verwenden können. Alternativ können Sie eine Erweiterung in das installierbare VSIX-Format paketieren und mit anderen Benutzern teilen.
Dieses Thema behandelt
- Verwendung von vsce, dem CLI-Tool zur Verwaltung von VS Code-Erweiterungen
- Paketieren, Veröffentlichen und Entfernen von Erweiterungen
- Registrierung eines Publishers, der für die Veröffentlichung von Erweiterungen erforderlich ist (Publisher erstellen)
vsce
vsce, kurz für "Visual Studio Code Extensions", ist ein Befehlszeilentool zum Paketieren, Veröffentlichen und Verwalten von VS Code-Erweiterungen.
Installation
Stellen Sie sicher, dass Sie Node.js installiert haben. Führen Sie dann
npm install -g @vscode/vsce
Verwendung
Sie können vsce verwenden, um Ihre Erweiterungen einfach zu paketieren und zu veröffentlichen.
$ cd myExtension
$ vsce package
# myExtension.vsix generated
$ vsce publish
# <publisher id>.myExtension published to VS Code Marketplace
vsce kann auch Erweiterungen suchen, Metadaten abrufen und entfernen. Eine Referenz zu allen verfügbaren vsce-Befehlen erhalten Sie, indem Sie vsce --help ausführen.
Erweiterungen veröffentlichen
Aus Sicherheitsgründen veröffentlicht vsce keine Erweiterungen, die vom Benutzer bereitgestellte SVG-Bilder enthalten.
Das Veröffentlichungstool prüft die folgenden Einschränkungen
- Das in
package.jsonangegebene Symbol darf kein SVG sein. - Die in
package.jsonbereitgestellten Abzeichen dürfen keine SVGs sein, es sei denn, sie stammen von vertrauenswürdigen Abzeichenanbietern. - Bild-URLs in
README.mdundCHANGELOG.mdmüssen aufhttps-URLs aufgelöst werden. - Bilder in
README.mdundCHANGELOG.mddürfen keine SVGs sein, es sei denn, sie stammen von vertrauenswürdigen Abzeichenanbietern.
Visual Studio Code verwendet Azure DevOps für seine Marketplace-Dienste. Das bedeutet, dass Authentifizierung, Hosting und Verwaltung von Erweiterungen über Azure DevOps bereitgestellt werden.
vsce kann Erweiterungen nur mit Personal Access Tokens (PATs) veröffentlichen. Sie müssen mindestens einen erstellen, um eine Erweiterung zu veröffentlichen.
Personal Access Token erhalten
Folgen Sie zunächst der Dokumentation, um Ihre eigene Organisation in Azure DevOps zu erstellen. In den folgenden Beispielen ist der Name der Organisation vscode, Sie sollten Ihren neuen Organisationsnamen entsprechend verwenden. Beachten Sie, dass der Organisationsname nicht unbedingt mit Ihrem Publisher-Namen übereinstimmen muss.
-
Öffnen Sie auf der Startseite Ihrer Organisation (z. B.:
https://dev.azure.com/vscode) das Dropdown-Menü "Benutzereinstellungen" neben Ihrem Profilbild und wählen Sie Personal Access Tokens
-
Wählen Sie auf der Seite Personal Access Tokens Neues Token aus.

-
Wählen Sie im Modal "Neues Personal Access Token erstellen" die folgenden Details für das Token aus
- Name: Ein beliebiger Name, den Sie für das Token wünschen
- Organisation: Alle zugänglichen Organisationen
- Ablauf (optional): Legen Sie das gewünschte Ablaufdatum für das Token fest
- Bereiche: Benutzerdefiniert
- Klicken Sie auf den Link Alle Bereiche anzeigen unter dem Abschnitt Bereiche.
- Scrollen Sie in der Liste der Bereiche zu Marketplace und wählen Sie den Bereich Verwalten.

-
Klicken Sie auf Erstellen.
Sie erhalten Ihr neu erstelltes Personal Access Token. Kopieren Sie es an einen sicheren Ort. Sie benötigen es, um einen Publisher zu erstellen.
Publisher erstellen
Ein Publisher ist eine Identität, die Erweiterungen im Visual Studio Code Marketplace veröffentlichen kann. Jede Erweiterung muss einen publisher-Identifikator in ihrer package.json-Datei enthalten.
Um einen Publisher zu erstellen
-
Gehen Sie zur Verwaltungsseite für Publisher im Visual Studio Marketplace.
-
Melden Sie sich mit demselben Microsoft-Konto an, das Sie im vorherigen Abschnitt zum Erstellen des Personal Access Tokens verwendet haben.
-
Klicken Sie im linken Bereich auf Publisher erstellen.
-
Geben Sie auf der neuen Seite die obligatorischen Parameter für einen neuen Publisher an – Identifikator und Name (Felder ID bzw. Name)
- ID: Der eindeutige Identifikator für Ihren Publisher im Marketplace, der in Ihren Erweiterungs-URLs verwendet wird. Die ID kann nach der Erstellung nicht mehr geändert werden.
- Name: Der eindeutige Name Ihres Publishers, der im Marketplace zusammen mit Ihren Erweiterungen angezeigt wird. Dies kann Ihr Firmen- oder Markenname sein.
Unten sehen Sie ein Beispiel für einen Publisher-Identifikator und -Namen für die Python-Erweiterung

-
Füllen Sie optional die restlichen Felder aus.
-
Klicken Sie auf Erstellen.
-
Überprüfen Sie den neu erstellten Publisher mit
vsce. Führen Sie in Ihrem Terminal den folgenden Befehl aus und geben Sie bei Aufforderung das im vorherigen Schritt erstellte Personal Access Token einvsce login <publisher id> https://marketplace.visualstudio.com/manage/publishers/ Personal Access Token for publisher '<publisher id>': **************************************************** The Personal Access Token verification succeeded for the publisher '<publisher id>'.
Nach der Verifizierung sind Sie bereit, eine Erweiterung zu veröffentlichen.
Erweiterung veröffentlichen
Sie können eine Erweiterung auf zwei Arten veröffentlichen
-
Automatisch, mit dem Befehl
vsce publishvsce publishWenn Sie Ihr Personal Access Token nicht bereits mit dem oben genannten Befehl
vsce loginangegeben haben, wirdvscedanach fragen. -
Manuell, indem Sie
vsce packageverwenden, um die Erweiterung in das installierbare VSIX-Format zu packen und sie dann auf der Verwaltungsseite für Publisher im Visual Studio Marketplace hochzuladen.
Installationen und Bewertungen von Erweiterungen überprüfen
Die Verwaltungsseite für Publisher im Visual Studio Marketplace bietet Ihnen Zugriff auf den Akquisitionstrend jeder Erweiterung im Zeitverlauf sowie auf die Gesamtakquisitionen und Bewertungen & Rezensionen. Um die Berichte anzuzeigen, klicken Sie auf eine Erweiterung oder wählen Sie Weitere Aktionen > Berichte aus.

Erweiterungsversion automatisch inkrementieren
Beim Veröffentlichen einer Erweiterung können Sie deren Versionsnummer automatisch erhöhen, indem Sie die SemVer-kompatible Nummer oder Version (major, minor oder patch) angeben, die inkrementiert werden soll. Um beispielsweise die Version einer Erweiterung von 1.0.0 auf 1.1.0 zu aktualisieren, würden Sie angeben
vsce publish minor
oder
vsce publish 1.1.0
Beide Befehle ändern zuerst das Attribut version in der package.json der Erweiterung und veröffentlichen sie dann mit der aktualisierten Version.
Wenn Sie vsce publish in einem Git-Repository ausführen, wird auch ein Versions-Commit und ein Tag über npm-version erstellt. Die Standard-Commit-Nachricht ist die Version der Erweiterung, Sie können jedoch eine benutzerdefinierte Commit-Nachricht mit dem Flag -m angeben. (Die aktuelle Version kann in der Commit-Nachricht mit %s referenziert werden).
Erweiterungen entfernen
Sie können eine Erweiterung von der Verwaltungsseite für Publisher im Visual Studio Marketplace entfernen, indem Sie auf Weitere Aktionen > Entfernen klicken.

Nachdem die Erweiterung entfernt wurde, ändert sich ihr Verfügbarkeitsstatus zu Entfernt, und sie ist nicht mehr aus dem Marketplace und Visual Studio Code herunterladbar.

Wenn Sie eine Erweiterung entfernen, behält der Marketplace die Erweiterungsstatistiken bei. Die Erweiterung bleibt öffentlich auffindbar und über eine bestehende API verfügbar.
Entfernen von Erweiterungen
Sie können eine Erweiterung auf zwei Arten entfernen
-
Automatisch, mit
vsceund dem Befehlunpublishvsce unpublish <publisher id>.<extension name> -
Manuell, von der Verwaltungsseite für Publisher im Visual Studio Marketplace durch Klicken auf Weitere Aktionen > Entfernen

In beiden Fällen werden Sie aufgefordert, die Entfernung durch Eingabe des Erweiterungsnamens zu bestätigen. Beachten Sie, dass die Entfernung unumkehrbar ist.
Wenn Sie eine Erweiterung entfernen, entfernt der Marketplace auch alle Erweiterungsstatistiken. Möglicherweise möchten Sie Ihre Erweiterung stattdessen entfernen.
Veralten von Erweiterungen
Sie können eine Erweiterung einfach als veraltet kennzeichnen oder sie zugunsten einer anderen Erweiterung oder Einstellung als veraltet kennzeichnen. Die als veraltet markierte Erweiterung wird in der Benutzeroberfläche mit durchgestrichenem, gedimmtem Text dargestellt.

Jede als veraltet markierte Erweiterung hat ein gelbes Warnsymbol in der unteren rechten Ecke des Erweiterungs-Tiles (siehe Screenshot oben). Wenn Sie mit der Maus über das Erweiterungs-Tile fahren, sehen Sie neben diesem Symbol Details zur Veraltung, ob
-
Die Erweiterung wurde ohne Alternativen als veraltet gekennzeichnet.

-
Die Erweiterung wurde zugunsten einer anderen Erweiterung als veraltet gekennzeichnet.

-
Die Erweiterung wurde zugunsten einer Einstellung als veraltet gekennzeichnet.

VS Code wird bereits installierte veraltete Erweiterungen nicht automatisch migrieren oder deinstallieren. Wenn eine veraltete Erweiterung eine alternative Erweiterung oder eine Einstellung hat, zeigt VS Code eine Schaltfläche Migrieren an, um Ihnen zu helfen, schnell zur angegebenen Alternative zu wechseln.

Um Ihre Erweiterung als veraltet zu markieren, hinterlassen Sie bitte einen Kommentar im Diskussionsfaden Veraltete Erweiterungen.
Derzeit werden Erweiterungen nicht als veraltet im Marketplace angezeigt. Diese Funktionalität wird später verfügbar sein.
Erweiterungen paketieren
Sie können Ihre Erweiterung paketieren, wenn Sie möchten
- Sie auf Ihrer VS Code-Instanz testen.
- Sie verteilen, ohne sie im Marketplace zu veröffentlichen.
- Sie privat mit anderen teilen.
Paketieren bedeutet, eine .vsix-Datei zu erstellen, die Ihre Erweiterung enthält. Diese Datei kann dann in VS Code installiert werden. Einige Erweiterungen veröffentlichen .vsix-Dateien als Teil ihrer GitHub-Releases.
Um eine Erweiterung zu paketieren, führen Sie den folgenden Befehl in Ihrem Erweiterungs-Stammverzeichnis aus
vsce package
Dieser Befehl erstellt eine .vsix-Datei in Ihrem Erweiterungs-Stammverzeichnis. Zum Beispiel my-extension-0.0.1.vsix.
Für Benutzer, um eine .vsix-Datei in VS Code zu installieren
-
Aus der Erweiterungsansicht in VS Code
- Gehen Sie zur Erweiterungsansicht.
- Wählen Sie Ansichten und weitere Aktionen... aus.
- Wählen Sie Aus VSIX installieren... aus.
-
Von der Befehlszeile
# if you use VS Code code --install-extension my-extension-0.0.1.vsix # if you use VS Code Insiders code-insiders --install-extension my-extension-0.0.1.vsix
Ihr Erweiterungsordner
Um eine Erweiterung zu laden, müssen Sie die Dateien in Ihren VS Code-Erweiterungsordner .vscode/extensions kopieren. Je nach Betriebssystem befindet sich dieser Ordner an einem anderen Speicherort
- Windows:
%USERPROFILE%\.vscode\extensions - macOS:
~/.vscode/extensions - Linux:
~/.vscode/extensions
Visual Studio Code-Kompatibilität
Beim Erstellen einer Erweiterung müssen Sie die VS Code-Versionen angeben, mit denen Ihre Erweiterung kompatibel ist. Verwenden Sie hierfür die Eigenschaft engines.vscode in package.json.
{
"engines": {
"vscode": "^1.8.0"
}
}
- Ein Wert von
1.8.0(ohne Caret) bedeutet, dass Ihre Erweiterung nur mit VS Code1.8.0kompatibel ist. - Ein Wert von
^1.8.0bedeutet, dass Ihre Erweiterung mit VS Code1.8.0und neueren Versionen kompatibel ist, einschließlich1.8.1,1.9.0usw.
Sie können die Eigenschaft engines.vscode verwenden, um sicherzustellen, dass die Erweiterung nur für Clients installiert wird, die die von Ihnen benötigte API enthalten. Dieser Mechanismus funktioniert sowohl mit stabilen als auch mit Insider-Releases.
Stellen Sie sich zum Beispiel vor, die neueste stabile Version von VS Code ist 1.8.0. Während der Entwicklung von Version 1.9.0 wurde eine neue API eingeführt und in der Insider-Version über die Version 1.9.0-insider verfügbar gemacht. Wenn Sie eine Erweiterungsversion veröffentlichen möchten, die diese API nutzt, sollten Sie eine Versionsabhängigkeit von ^1.9.0 angeben. Auf diese Weise ist Ihre neue Erweiterungsversion nur auf VS Code >=1.9.0 verfügbar (mit anderen Worten, Benutzer mit der aktuellen Insider-Version). Benutzer der stabilen VS Code-Version erhalten das Update erst, wenn die stabile Version 1.9.0 erreicht.
Erweiterte Nutzung
Marketplace-Integration
Sie können das Aussehen Ihrer Erweiterung im Visual Studio Marketplace anpassen. Sehen Sie sich die Go-Erweiterung als Beispiel an.
Hier sind einige Tipps, um Ihre Erweiterung im Marketplace gut aussehen zu lassen
-
Fügen Sie eine
README.md-Datei im Stammverzeichnis Ihrer Erweiterung hinzu, mit dem Inhalt, den Sie auf der Marketplace-Seite der Erweiterung anzeigen möchten.HinweisWenn Sie eine
repository-Eigenschaft in Ihrerpackage.jsonhaben, die auf ein öffentliches GitHub-Repository verweist, erkenntvscedies automatisch und passt relative Links entsprechend an, wobei standardmäßig dermain-Branch verwendet wird. Sie können dies mit dem Flag--githubBranchbeim Ausführen vonvsce packageodervsce publishüberschreiben. Sie können auch Basis-URLs für Links und Bilder mit den Flags--baseContentUrlund--baseImagesUrlfestlegen. -
Fügen Sie eine
LICENSE-Datei im Stammverzeichnis Ihrer Erweiterung hinzu, mit Informationen zur Lizenz der Erweiterung. -
Fügen Sie eine
CHANGELOG.md-Datei im Stammverzeichnis Ihrer Erweiterung hinzu, mit Informationen zur Änderungshistorie Ihrer Erweiterung. -
Fügen Sie eine
SUPPORT.md-Datei im Stammverzeichnis Ihrer Erweiterung hinzu, mit Informationen, wie Sie Unterstützung für Ihre Erweiterung erhalten. -
Legen Sie die Bannerhintergrundfarbe auf der Marketplace-Seite fest, indem Sie den entsprechenden Hex-Wert über die Eigenschaft
galleryBanner.colorinpackage.jsonangeben. -
Legen Sie ein Symbol fest, indem Sie einen relativen Pfad zu einer PNG-Datei von mindestens 128x128 Pixeln angeben, die in Ihrer Erweiterung enthalten ist, über die Eigenschaft
iconinpackage.json.
Weitere Informationen finden Sie unter Marketplace Presentation Tips.
Publisher verifizieren
Sie können ein verifizierter Publisher werden, indem Sie den Besitz einer zulässigen Domain verifizieren, die mit Ihrer Marke oder Identität verbunden ist. Sobald Ihr Publisher verifiziert ist, fügt der Marketplace einen Verifizierungs-Badge zu Ihren Erweiterungsdetails hinzu.
Voraussetzungen
Um verifiziert zu werden, muss ein Publisher mindestens sechs Monate lang eine oder mehrere Erweiterungen im VS Marketplace haben, und die Registrierung der Domain muss ebenfalls mindestens sechs Monate alt sein. Bitte warten Sie, bis diese Kriterien erfüllt sind, bevor Sie die Verifizierung beantragen.

Um einen Publisher zu verifizieren
-
Gehen Sie zur Verwaltungsseite für Publisher im Visual Studio Marketplace.
-
Wählen Sie im linken Bereich den Publisher aus oder erstellen Sie einen Publisher, den Sie verifizieren möchten.
-
Wählen Sie im Hauptbereich die Registerkarte Details aus.

-
Geben Sie im Abschnitt Verifizierte Domain auf der Registerkarte Details eine zulässige Domain ein.

Hinweis: Beachten Sie ein Sternchen (*) neben dem Titel der Registerkarte Details, nachdem Sie mit der Eingabe begonnen haben. Genau wie in VS Code zeigt dies an, dass Sie ungespeicherte Änderungen haben. Aus demselben Grund ist die Schaltfläche Verifizieren noch deaktiviert.
-
Wählen Sie Speichern und dann Verifizieren aus.

Ein Dialogfenster wird angezeigt und gibt Ihnen Anweisungen zum Hinzufügen eines TXT-Eintrags zur DNS-Konfiguration Ihrer Domain.

-
Befolgen Sie die Anweisungen, um den TXT-Eintrag zur DNS-Konfiguration Ihrer Domain hinzuzufügen.
-
Wählen Sie im Dialogfenster Verifizieren aus, um zu überprüfen, ob der TXT-Eintrag erfolgreich hinzugefügt wurde.

Sobald Ihr TXT-Eintrag validiert wurde, wird das Marketplace-Team Ihre Anfrage prüfen und Ihnen das Ergebnis innerhalb von 5 Werktagen mitteilen. Die Validierung umfasst unter anderem: Domain, Website und Erweiterungen Voraussetzungen für die Erfolgsbilanz, Inhaltsberechtigung, Legitimität, Vertrauen und positiven Ruf.
Wenn die Validierung erfolgreich ist, sehen Sie den entsprechenden Badge neben Ihrem Publisher-Namen auf der Verwaltungsseite des Visual Studio Marketplace-Publishers.

Hinweise:
- Jegliche Änderungen am Anzeigenamen des Publishers führen zum Widerruf des Verifizierungs-Badges.
- Jegliche zukünftigen Nutzungsbedingungen oder oben genannte Validierungsverstöße durch den Publisher führen zum Widerruf des Verifizierungs-Badges.
Zulässige Domains
Zulässige Domains erfüllen die folgenden Kriterien
- Sie müssen die DNS-Konfigurationseinstellungen verwalten und einen TXT-Eintrag hinzufügen können.
- Es darf keine Subdomain sein ({subdomain}.github.io, {subdomain}.contoso.com oder ähnlich).
- Sie muss ein HTTPS-Protokoll verwenden.
- Sie muss mit einem HTTP-200-Status auf eine HEAD-Anfrage reagieren können.
Erweiterungs-Preislabe
Sie können optional ein Preislabe auf der Marketplace-Seite Ihrer Erweiterung anzeigen lassen, um anzugeben, dass sie Kostenlos oder Kostenlose Testversion ist.
Um ein Preislabe anzuzeigen, fügen Sie die Eigenschaft pricing zu Ihrer package.json hinzu. Zum Beispiel
{
"pricing": "Free"
}
Zulässige Werte sind: Free und Trial (Groß-/Kleinschreibung wird beachtet). Wenn die Eigenschaft pricing nicht angegeben ist, ist der Standardwert Free.
Stellen Sie sicher, dass Sie die vsce-Version >= 2.10.0 verwenden, wenn Sie Ihre Erweiterung veröffentlichen, damit das Preislabe funktioniert.
Erweiterungs-Sponsor
Sie können sich für Sponsoring entscheiden, um Ihren Benutzern eine Möglichkeit zu geben, Ihre Arbeit zu unterstützen.
Um einen Sponsorenlink anzuzeigen, fügen Sie die Eigenschaft sponsor zu Ihrer package.json hinzu. Zum Beispiel
"sponsor": {
"url": "https://github.com/sponsors/nvaccess"
}
Stellen Sie sicher, dass Sie die vsce-Version >= 2.9.1 verwenden, wenn Sie Ihre Erweiterung veröffentlichen, damit das Sponsoring funktioniert.
Der Sponsorenlink wird auf der Seite Ihrer Erweiterung im Marketplace und in VS Code in der Kopfzeile der Erweiterungsdetails angezeigt.

Wir hoffen, dass dies unseren Benutzern ermöglichen wird, die Erweiterungen zu finanzieren, auf die sie angewiesen sind, um die Leistung, Zuverlässigkeit und Stabilität der Erweiterung zu verbessern.
Verwendung von .vscodeignore
Sie können eine Datei .vscodeignore erstellen, um zu verhindern, dass bestimmte Dateien in Ihr Erweiterungspaket aufgenommen werden. Diese Datei ist eine Sammlung von Glob-Mustern, eines pro Zeile. Zum Beispiel
**/*.ts
**/tsconfig.json
!file.ts
Sie sollten alle Dateien ignorieren, die zur Laufzeit nicht benötigt werden. Wenn Ihre Erweiterung beispielsweise in TypeScript geschrieben ist, sollten Sie alle **/*.ts-Dateien ignorieren, wie im obigen Beispiel.
Entwicklungsabhängigkeiten, die in devDependencies aufgeführt sind, werden automatisch ignoriert, sodass Sie sie nicht explizit hinzufügen müssen.
Schritt vor der Veröffentlichung
Sie können Ihrem Manifest eine Vorab-Veröffentlichungsschritt hinzufügen, der jedes Mal aufgerufen wird, wenn die Erweiterung gepackt wird. Sie können beispielsweise den TypeScript-Compiler zu diesem Zeitpunkt aufrufen.
{
"name": "uuid",
"version": "0.0.1",
"publisher": "someone",
"engines": {
"vscode": "0.10.x"
},
"scripts": {
"vscode:prepublish": "tsc"
}
}
Vorabversionen von Erweiterungen
Benutzer können Vorabversionen von Erweiterungen in VS Code oder VS Code Insiders installieren, um regelmäßig die neueste Erweiterungsversion vor der offiziellen Erweiterungsveröffentlichung zu erhalten.

Um eine Vorabversion zu veröffentlichen, übergeben Sie das Flag --pre-release an die Befehle vsce package oder vsce publish.
vsce package --pre-release
vsce publish --pre-release
Wir unterstützen nur major.minor.patch für Erweiterungsversionen, semver-Vorab-Tags werden nicht unterstützt. Versionen müssen sich zwischen Vorab- und regulären Veröffentlichungen unterscheiden. Das heißt, wenn 1.2.3 als Vorabversion hochgeladen wird, muss die nächste reguläre Veröffentlichung mit einer eindeutigen Version, z. B. 1.2.4, hochgeladen werden. Vollständige semver-Unterstützung wird in Zukunft verfügbar sein.
VS Code aktualisiert Erweiterungen automatisch auf die höchste verfügbare Version. Selbst wenn ein Benutzer eine Vorabversion gewählt hat und eine Erweiterungsveröffentlichung mit einer höheren Version verfügbar ist, wird der Benutzer auf die veröffentlichte Version aktualisiert. Daher empfehlen wir, dass Erweiterungen major.EVEN_NUMBER.patch für reguläre Veröffentlichungen und major.ODD_NUMBER.patch für Vorabversionen verwenden. Zum Beispiel: 0.2.* für reguläre Veröffentlichungen und 0.3.* für Vorabversionen.
Wenn Erweiterungsautoren nicht möchten, dass ihre Vorabbenutzer auf die reguläre Version aktualisiert werden, empfehlen wir, immer eine neue Vorabversion zu inkrementieren und zu veröffentlichen, bevor eine reguläre Version veröffentlicht wird, um sicherzustellen, dass die Vorabversion immer höher ist. Beachten Sie, dass Vorabbenutzer zwar auf eine reguläre Version aktualisiert werden, wenn diese höher ist, sie aber weiterhin für automatische Updates auf zukünftige Vorabversionen mit höheren Versionsnummern als die reguläre Version berechtigt bleiben.
Vorabversionen von Erweiterungen werden nach VS Code-Version 1.63.0 unterstützt. Daher sollten alle Vorabversionen von Erweiterungen den Wert engines.vscode in ihrer package.json auf >= 1.63.0 setzen.
Erweiterungen, die bereits eine separate eigenständige Vorabversion haben, sollten sich an das VS Code-Team wenden, um die automatische Deinstallation der veralteten separaten Erweiterung zu ermöglichen und die Vorabversion der Hauptanwendung zu installieren.
Plattformspezifische Erweiterungen
Sie können das VSIX-Paket Ihrer Erweiterung für jede Plattform (Windows, Linux, macOS) veröffentlichen, auf der VS Code läuft. Solche Erweiterungen nennen wir plattformspezifisch.
Ab Version 1.61.0 sucht VS Code nach dem Erweiterungspaket, das mit der aktuellen Plattform übereinstimmt.
Plattformspezifische Erweiterungen sind nützlich, wenn Ihre Erweiterung plattformspezifische Bibliotheken oder Abhängigkeiten hat, sodass Sie die genauen Binärdateien steuern können, die in einem Plattformpaket enthalten sind. Ein häufiger Anwendungsfall sind **native Node.js-Module**.
Plattformspezifische Erweiterungen werden als separate Pakete veröffentlicht, die plattformspezifische Inhalte enthalten. Sie können die Zielplattform angeben, indem Sie das Flag --target übergeben. Wenn Sie dieses Flag nicht übergeben, wird dieses Paket als Fallback für alle Plattformen verwendet, für die kein plattformspezifisches Paket vorhanden ist.
Die aktuell verfügbaren Plattformen sind: win32-x64, win32-arm64, linux-x64, linux-arm64, linux-armhf, alpine-x64, alpine-arm64, darwin-x64, darwin-arm64 und web.
Wenn Sie möchten, dass eine plattformspezifische Erweiterung auch im Browser als Web-Erweiterung läuft, muss sie bei der Veröffentlichung die Plattform web anvisieren. Die Plattform web respektiert den Einstiegspunkt browser in der package.json. Um die Erweiterungsfunktionen, die im web nicht unterstützt werden, zu deaktivieren, empfehlen wir die Verwendung von when-Klauseln in der package.json anstelle des Versendens separater package.json für die Webplattform oder des Entfernens von Teilen des VSIX, die im web nicht funktionieren.
Veröffentlichung
Ab Version 1.99.0 unterstützt vsce den Parameter --target, mit dem Sie die Zielplattform beim Paketieren und Veröffentlichen eines VSIX angeben können.
Hier erfahren Sie, wie Sie ein VSIX für die Plattformen win32-x64 und win32-arm64 veröffentlichen können
vsce publish --target win32-x64 win32-arm64
Alternativ können Sie auch das Flag --target beim Paketieren verwenden, um ein plattformspezifisches VSIX zu erstellen. Zum Beispiel, um ein VSIX für die Plattform win32-x64 zu paketieren und es dann zu veröffentlichen
vsce package --target win32-x64
vsce publish --packagePath PATH_TO_WIN32X64_VSIX
Kontinuierliche Integration
Die Verwaltung mehrerer plattformspezifischer VSIXs kann überwältigend sein, daher empfehlen wir, den Build-Prozess Ihrer Erweiterung mit Continuous Integration (CI)-Tools zu automatisieren. Sie können beispielsweise GitHub Actions verwenden, um Ihre Erweiterungen zu erstellen. Unser Plattformspezifisches Erweiterungsbeispiel kann als Ausgangspunkt für das Lernen dienen: sein Workflow ermöglicht das gängige Szenario der plattformspezifischen Erweiterungsunterstützung, um native Node.js-Module als Abhängigkeiten für alle unterstützten VS Code-Ziele zu verteilen.
Nächste Schritte
- Extension Marketplace – Erfahren Sie mehr über den öffentlichen Extension Marketplace von VS Code.
- Erweiterungen testen – Fügen Sie Ihrem Erweiterungsprojekt Tests hinzu, um eine hohe Qualität sicherzustellen.
- Erweiterungen bündeln – Verbessern Sie die Ladezeiten, indem Sie Ihre Erweiterungsdateien mit webpack bündeln.
Häufig gestellte Fragen
Ich erhalte die Fehlermeldung "Sie haben die maximale Anzahl von zulässigen Tags von 30 überschritten", wenn ich versuche, meine Erweiterung zu veröffentlichen?
Der Visual Studio Marketplace erlaubt kein Erweiterungspaket mit mehr als 30 keywords in der package.json. Beschränken Sie die Anzahl der Schlüsselwörter/Tags auf maximal 30, um diesen Fehler zu vermeiden.
Ich erhalte einen 403 Forbidden (oder 401 Unauthorized)-Fehler, wenn ich versuche, meine Erweiterung zu veröffentlichen?
Ein häufiger Fehler bei der Erstellung des PAT (Personal Access Token) ist die Auswahl einer bestimmten Organisation anstelle von Alle zugänglichen Organisationen im Dropdown-Menü des Feldes Organisationen. Ein weiterer möglicher Fehler ist der falsche Geltungsbereich – Sie sollten die autorisierten Geltungsbereiche auf Marketplace (Verwalten) setzen, damit die Veröffentlichung funktioniert.
Ich kann meine Erweiterung nicht über das vsce-Tool deinstallieren?
Sie haben möglicherweise Ihre Erweiterungs-ID oder Publisher-ID geändert. Sie können Ihre Erweiterungen auch direkt über die Verwaltungsseite für Publisher im Visual Studio Marketplace verwalten. Aktualisieren oder entfernen Sie sie beispielsweise.
Warum behält vsce die Dateiattribute nicht bei?
Beachten Sie, dass beim Erstellen und Veröffentlichen Ihrer Erweiterung unter Windows alle Dateien, die in das Erweiterungspaket aufgenommen werden, POSIX-Dateiattribute vermissen, insbesondere das ausführbare Bit. Einige node_modules-Abhängigkeiten setzen diese Attribute für ihre ordnungsgemäße Funktion voraus. Das Veröffentlichen von Linux und macOS funktioniert wie erwartet.
Kann ich von einem Continuous Integration (CI)-Build veröffentlichen?
Ja, siehe den Abschnitt Automatisierte Veröffentlichung im Thema Continuous Integration, um zu erfahren, wie Sie Azure DevOps, GitHub Actions und GitLab CI konfigurieren, um Ihre Erweiterung automatisch im Marketplace zu veröffentlichen.
Ich erhalte die Fehlermeldung "FEHLER Die Erweiterung 'name' existiert bereits im Marketplace", wenn ich versuche, meine Erweiterung zu veröffentlichen?
Der Marketplace verlangt, dass der Erweiterungsname für jede Erweiterung eindeutig ist. Wenn eine Erweiterung mit demselben Namen bereits im Marketplace existiert, erhalten Sie die folgende Fehlermeldung
ERROR The extension 'name' already exists in the Marketplace.
Dieselbe Regel gilt für den Anzeigenamen einer Erweiterung.
Welche Paketmanager werden unterstützt?
Sie können entweder npm oder yarn v1 verwenden, um die Abhängigkeiten Ihrer Erweiterung zu verwalten.
Ich benötige Hilfe mit meinem VS Marketplace-Konto oder Support bei der Veröffentlichung einer Erweiterung?
Sie können sich an das VS Marketplace-Supportteam wenden, indem Sie sich unter Publisher und Erweiterungen verwalten anmelden und oben rechts auf den Link "Microsoft kontaktieren" klicken.