2015-09-30 14 views
21

Ich habe an einer VS-Erweiterung gearbeitet, die mit SideWaffle ein paar Dateien mit einem Kesselcode erstellt und ich hatte ein Problem, wo, wann immer ich ein neues Element hinzufügen würde, mein Code wäre unter "Meine benutzerdefinierten Vorlagen". Ich fand das in der Datei template-builder.props und aktualisierte es auf "Test", aber als ich es erneut versuchte, hatte ich sowohl "Meine benutzerdefinierten Vorlagen" als auch "Test", die beide die gleiche Erweiterung enthielten.Erweiterung konnte nicht gefunden werden. Bitte stellen Sie sicher, dass die Erweiterung installiert wurde

Ich dachte, VS könnte den alten Namen oder etwas im Cache gespeichert haben, also habe ich die Erweiterung von VS deinstalliert und neu gestartet. Nun wird das Projekt nicht bauen und gibt den Fehler:

Extension 'ProjName..00000000-0000-0000-0000-000000000000' could not be found. 
Please make sure the extension has been installed. 

Ich habe versucht Neuinstallation die Erweiterung mit der .vsix im Debug-Ordnern und der Neustart VS, aber ich habe den gleichen Fehler). Ich konnte online nichts darüber finden und, ehrlich gesagt, bin ich verwirrt darüber, warum das Projekt installiert werden muss, um es zu bauen.

Was kann ich tun, um dieses Projekt wieder aufzubauen?

Antwort

36

Nach ein bisschen herumspielen ich in der Lage war, eine Lösung für mein Problem herauszufinden:

ich sehen kann, dass eine Erweiterung der experimentellen Instanz von Visual Studio hinzugefügt wird, wenn Sie erfolgreich das Projekt erstellen (I‘ Es gibt keine andere Möglichkeit, die Erweiterung zu installieren (VS2013). Wenn Sie versuchen, das Projekt ohne die Erweiterung zu erstellen, die auf der experimentellen Instanz installiert wird, schlägt das Erstellen fehl.

Natürlich würde dies bedeuten, dass Sie das Projekt niemals erstellen könnten, da Sie es erstellen müssen, um die Erweiterung zu installieren, und die Erweiterung muss installiert werden, damit das Projekt erstellt werden kann. Nur beim allerersten Build des Projekts stimmt das nicht. Sie können ohne die Erweiterung erstellen, die dann die Erweiterung für die experimentelle Instanz installiert und zukünftige Builds des Projekts ermöglicht.

Wenn Sie, wie ich, die Erweiterung der experimentellen Instanz deinstallieren, geraten Sie in eine Catch-22-Situation, in der der Build fehlschlägt, weil die Erweiterung nicht installiert ist und Sie die Installation nicht durchführen können Erweiterung, weil der Build fehlschlägt.

Die Lösung hierfür war einfach genug. Ich musste das Projekt nur ausführen, zu welchem ​​Zeitpunkt der Build fehlschlagen würde, und dann das Projekt vom letzten erfolgreichen Build ausführen. Dadurch wird die experimentelle Instanz ohne installierte Erweiterung geöffnet. Wenn Sie jedoch die experimentelle Instanz schließen, können Sie das Projekt erfolgreich erstellen, wodurch die Erweiterung erneut installiert wird.

Ich weiß nicht genau, warum das das Problem behebt, aber ich würde gerne wissen, ob jemand irgendwelche Ideen hat.

+3

Hmm. Ich hatte genau die gleiche Situation wie du, nur dass ich nach dem Schließen der experimentellen Instanz (die die Erweiterung neu installiert hat) immer noch nicht bauen konnte. Scheint, dass ich "VSIX-Inhalt an experimentelle Instanz zum Debuggen bereitstellen" deaktiviert lassen muss (die Erweiterung wird trotzdem dank der anderen Optionen kopiert und debuggbar). – Cameron

+0

@oliver Nicholls Warum Sie die Bearbeitung gesichert .. es war besser !! – Moumit

+0

Die Bearbeitung Teil meiner Antwort in einem Block Zitat, und es ist kein Zitat. –

7

Dieser große Beitrag zeigt alle möglichen Lösungen: http://comealive.io/Vsix-extension-could-not-be-found/

Dies ist für mich gearbeitet: Erhöhung der Version des Pakets in der Datei .vsixmanifest

+0

Dam diese Seite ist jetzt weg, nur 9 Monate später! –

+0

Dies sollte die Lösung sein! – LukTar

0

Das ist für mich gearbeitet:

Deaktivieren Sie die Erweiterung "Roaming Extension Manager" innerhalb der Experimentellen Instanz, die ich zuvor installiert hatte.

Ich hatte vor kurzem viele Work-in-Progress-Versionen einer Erweiterung lokal erstellt, von denen ich einige aus meinem lokalen Dateisystem gelöscht hatte (wie ich Kopien in git Land hatte), und es war möglich, dass ich Roaming verwirrt hatte Extension Manager und/oder Visual Studio, indem Sie dies tun.

Zum besseren Verständnis öffnete ich die experimentelle Instanz und deinstallierte alle meine persönlichen Erweiterungen, die ich lokal erstellt hatte und nicht mehr benötigte.

0

Bei mir trat Problem während der Entwicklung von VSIX-Anwendung auf. Aus Versehen habe ich versucht, dies zu debuggen, als das Projekt im Release Modus war. In diesem Moment wurde der obige Fehler angezeigt.

Lösung: den Modus von Release-Wechsel zum Debug ein.

0

Dieser Fehler kann durch Verwendung eines Rebuild- oder Clean-Befehls für diesen Projekttyp verursacht werden.

Verwenden Sie für die Wiederherstellung die Methode, die am besten für Sie aus den anderen Antworten hier — funktioniert, die so einfach wie das Starten eines Laufs des Projekts sein kann. Die resultierende Debugsitzung kann sofort gestoppt werden, bevor die langwierige Initialisierung der experimentellen Instanz abgeschlossen ist, da der erforderliche Visual Studio-Status jetzt wiederhergestellt wurde und das Projekt nun erfolgreich erstellt wurde.

Danach versuchen Sie, Rebuild oder Clean für diese Art von Projekt zu vermeiden, um unnötige Wiederholung des Problems zu vermeiden.