en
de

Maven-Plugin vereinfacht Smart Contract

Die Zühlke Fokusgruppe Blockchain beschäftig sich bereits eine ganze Weile mit Ethereum. Die Maturität dieser Blockchain-Implementierung ist aus unserer Sicht am höchsten.

Um möglichst schnell Prototypen zu bauen, vorhandene Tools zu testen und Erfahrungen im Betrieb zu sammeln, haben wir ein privates Ethereum-Netzwerk auf einer AWS Instance am Laufen. Damit schaffen wir den Sprung von «Works on my machine» zu «it works». Es zeigten sich so auch Lücken im vorhandenen Tooling. Lücken, welche wir auch während unsere Arbeits- und Ausbildungszeit hier bei Zühlke zu schliessen versuchen. Der Erfolg der Blockchain ist der Open-Source-Community zu verdanken. Wir möchten nicht nur davon profitieren, sondern mit unserem Beitrag die Technologie und die Community unterstützen, vorantreiben und in die Industrie bringen.

Block-Inspector

Wer bereits Solidity Smart Contracts erstellt und diese in Ethereum verteilt hat, kennt die Problematik: Welche Transaktionen werden zum Smart  Contract gesendet? Welche Methode mit welchen Parametern wird aufgerufen? Welche Events hat der Smart  Contract ausgegeben? Wurde die Transaktion akzeptiert oder gab es ein „out of gas“?

Mit Expertenwissen findet man die Antwort auf den Ethereum Nodes. Diese repetierende und zeitaufwändige Arbeit kann automatisiert werden.

Block-Inspector ist ein Command Line Monitoring Tool, welches einen spezifischen Smart  Contract in Echtzeit in der Ethereum-Blockchain überwacht.

Block-Inspector kann via NPM installiert werden und ist als Open Source Projekt unter der MIT Lizenz und auf GitHub gehostet. Ein Demo-Video ist auf YouTube zu finden:

Web3J Maven Plugin

Web3j ist eine Java Library welche mit Nodes in einem Ethereum-Netzwerk interagiert. Sie kann zudem aus Solidity Smart Contracts Java-Klassen erzeugen. Dies ermöglicht einer Java-Applikation mit einem deployeten Smart  Contract zu interagieren. Die Brücke zwischen der Java-Welt und den Smar t Contracts ist geschlagen. Diese Library wird hauptsächlich von Conor Svensson unter der Apache-2-Lizenz entwickelt. Basierend auf dieser Library haben wir ein Maven-Plugin geschrieben, welche es ermöglicht, Java-Klassen aus den Solidity  Contracts während des Build-Prozesses automatisiert zu erstellen. Ein kleiner Mosaikstein auf dem Weg zu einem durchgängigen CI-/CD- Prozess in der Smart- Contract-Entwicklung.

Das Maven-Plugin ist unter der Apache Lizenz auf Github gehostet und kann via Maven Central heruntergeladen werden.

Expert Software Engineer

Heinz Marti

Expert Software Engineer

Kasimir Blaser

Kommentare (0)

×

Updates

Schreiben Sie sich jetzt ein für unsere zwei-wöchentlichen Updates per E-Mail.

This field is required
This field is required
This field is required

Mich interessiert

Select at least one category
You were signed up successfully.