Warum beendet Remix das Starten aller meiner Bibliotheken nicht?

Ich bin auf ein Problem gestoßen. Ich habe einen Vertrag mit einer Hierarchie von Bibliotheken (einige untergeordnete Bibliotheken importieren übergeordnete Bibliotheken). Alle Bibliotheken werden letztendlich von unserem Hauptvertrag importiert. Zuvor konnte ich die Bibliotheken und den Vertrag ohne Probleme bereitstellen (d. h. nach der Bereitstellung jeder Bibliothek wurde eine Metamaske angezeigt, sodass ich die Transaktion der nächsten Bibliothek bestätigen konnte). Ab gestern wird die Metamaske nur noch für die ersten beiden Bibliotheken angezeigt. Nachdem die Transaktion der zweiten Bibliothek erfolgreich war, sitzt Remix einfach da und tut nichts (die Metamaske öffnet sich nicht und hat keine Transaktionen in der Warteschlange).

Alle Bibliotheken lassen sich gut kompilieren. Ich habe die Transaktionen auf Etherscan überprüft und beide Bibliothekstransaktionen waren erfolgreich. Ich habe versucht, jede Bibliothek einzeln bereitzustellen, und alle waren erfolgreich. Soweit ich weiß, kann ich meinen Hauptvertrag nicht bereitstellen, ohne zuerst alle Bibliotheken bereitzustellen. Ich bin mir nicht sicher, was das Problem ist. Irgendeine Hilfe?

Bitte fügen Sie einen Screenshot der JavaScript-Konsole bei, um zu verstehen, ob es Probleme gibt. (Abhängig von Ihrem Browser können Sie es im Einstellungsmenü, Programmiertools oder ähnlichem öffnen)
Keine Fehler oder Warnungen in der Konsole. Es gibt mir nur eine ausstehende Nachricht für jede Bibliothek und gibt dann einen Etherscan-Link und Transaktionsinformationen aus. Dasselbe wie immer. Es hält einfach nach der zweiten Bibliothek an, als würde es immer noch auf den Abschluss der Transaktion warten.
Ich meine nicht die Remix-Konsole, sondern JavaScript-Tools für die Programmierkonsole des Browsers. Redest du von welcher Konsole?

Antworten (1)

Die derzeit verfügbare Version 0.7.0 von Remix, zuvor als Alpha-Version verfügbar und erst seit einigen Tagen online, führt einige neue Funktionen für die Verwaltung von Bibliotheken ein,

Es sollte jetzt möglich sein, eine einzelne Kopie der Bibliothek in der Blockchain (vm, testrpc, test net oder was auch immer) zu haben, die viele Verträge bedient, von denen sich jeder auf dieselbe Bibliotheksadresse bezieht.

Davor hat jeder Vertrag, der eine Bibliothek umfasst, zuerst seine eigene Kopie der Bibliothek bereitgestellt und verwendet.

Diese Funktion wurde im Moment noch nicht umfassend validiert und kann eventuell und möglicherweise Probleme verursachen.

In solchen Fällen ist es sehr nützlich, die JavaScript-Konsole des Browsers zu verfolgen, um eventuelle Fehler (immer rot geschrieben!) beim Deployment zu finden, um sie möglicherweise dem Entwicklerteam zu melden, um Ratschläge zu erhalten.

In der Zwischenzeit können Sie mit der alten Version (0.6.4) arbeiten, indem Sie sie mit npm am Node-Prompt installieren

npm install -g remix-ide@0.6.4

dann

remix-ide

Folgen Sie dann den Anweisungen auf dem Bildschirm.

Wenn auf diese Weise alles in Ordnung ist, ist das Problem die neue Funktion, die verstanden/behoben werden muss