Hochladen von Java-Artefakten nach Maven Central

Maven Central ist das wichtigste öffentliche Repository im Java-Ökosystem und ermöglicht es Entwicklern, wiederverwendbare Komponenten einfach in ihre Projekte einzubinden.

Das Hochladen von Java-Artefakten in das Maven Central Repository ist ein essentieller Schritt, um Java-Bibliotheken und -Anwendungen einer breiten Entwickler-Community zur Verfügung zu stellen. Vor 8 Jahren hatte ich das schon mal beschrieben. Ein paar Änderungen gibt es inzwischen.

Warum sollte man überhaupt Artefakte nach Maven Central hochladen? „Hochladen von Java-Artefakten nach Maven Central“ weiterlesen

Labyrinth mit dem Blender PlugIn: Maze Generator

Ein nützliches PlugIn ist der Maze Generator, mit dem Benutzer auf einfache Weise komplexe Labyrinthe erstellen können.

Der Maze Generator ist ein Blender-Add-on, das entwickelt wurde, um anpassbare, zufällige Labyrinth-Meshes innerhalb von Blender zu erstellen.

Dieses Tool ist ideal für Benutzer
-in der Spieleentwicklung,
-der architektonischen Visualisierung oder
-für künstlerische Projekte,
die schnell komplexe Labyrinthe mit verschiedenen Konfigurationen generieren müssen.

Mit dem Maze Generator kann man schnell ein Labyrinth in Blender erstellen wie das z.B.:

Hier ist das Plugin zu finden:
„Labyrinth mit dem Blender PlugIn: Maze Generator“ weiterlesen

10 Gründe warum Nutzer eine Bill of Materials (SBOM) brauchen

Seit ein paar Wochen gibt es die neue Version 2.7.11 von CycloneDX. Wenn das nicht nicht ein Grund ist, einen neue SBOM zu erzeugen. Eine Software Bill of Materials (SBOM) ist eine Liste der Bestandteile und Komponenten einer Softwareanwendung sowie ihrer Beziehungen zueinander. Hier hatte ich ja schon mal beschrieben wie man mit Maven und dem CycloneDX Plugin eine erzeugt. Hier sind die 10 wichtigsten Gründe, warum Benutzer eine SBOM benötigen:

„10 Gründe warum Nutzer eine Bill of Materials (SBOM) brauchen“ weiterlesen

Blender „Curve Profiles Plugin“ oder Präzision und Kreativität in der 3D-Modellierung

In der Welt der 3D-Modellierung hat sich Blender als Powerhouse etabliert und bietet Künstlern und Designern eine vielseitige und robuste Plattform, um ihrer Kreativität Ausdruck zu verleihen. Einer der Gründe für die Popularität von Blender sind die zahlreichen Plugins, die seine Funktionalität erweitern und spezifische Anforderungen erfüllen. Unter diesen Plugins sticht das „Blender Curve Profiles“ heraus, das Benutzern ermöglicht, komplexe Kurven mühelos zu erstellen und zu bearbeiten. Alle Beispiele des Plugins:

Das Blender Curve Profiles Plugin verstehen

Das Blender Curve Profiles Plugin ist ein essentielles Werkzeug, „Blender „Curve Profiles Plugin“ oder Präzision und Kreativität in der 3D-Modellierung“ weiterlesen

Einfaches generieren von Software Bill of Materials (SBOM) mit Maven CycloneDX Plugin

SBOM (Software Bill of Materials) ist eine Inventar Liste einer Codebasis (hier im Beispiel Java), einschließlich aller identifizierbaren Komponenten samt ihrer Lizenz- und Versionsinformationen sowie Angaben zu eventuell vorhandenen Sicherheitslücken.
SBOM soll helfen, den Softwarecode samt bekannter Bugs und lizenzrechtlicher Fallstricke in der Codebasis zu inventarisieren, um so Risiken auszumerzen.

Diese SBOM Listen im Json oder XML Format können leicht mit dem Maven Plugin CycloneDX erzeugt werden.

Das Plugin kann in der pom.xml an die Package-Phase wie folgt mit den default Werten angekoppelt werden:

Hier die erzeugten Beispiel SBOM für das TWBibel Projekt im XML Format (entfernt).

Und im JSON Format:

„Einfaches generieren von Software Bill of Materials (SBOM) mit Maven CycloneDX Plugin“ weiterlesen

Smart-Contract Wrapper für Java mit web3j-maven-plugin erstellen


Es muss ja nicht immer remix sein, um ein Smart-Contract zu compilieren. Es geht auch wie oben dargestellt mit einem Maven-Plugin (oder Gradle) um mit Ethereum-Netzwerk zu interagieren. Also wie können Solidity Smart Contracts kompiliert und dafür eine Java-Wrapper-Klassen dafür generiert werden?

Wir nehmen als Beispiel mein bekannter Smart-Contract Gehirn.sol der den IQ auf der Blockchain festhalten kann und mit Solidity programmiert ist und speichern in in dem src/main/resources Verzeichnis.

Das Plugin wird mit mvn web3j:generate-sources gestartet und wie folgt in der pom.xml eingebunden: „Smart-Contract Wrapper für Java mit web3j-maven-plugin erstellen“ weiterlesen

Refactoring eines Maven-Plugins mit Dependency Injection

Das hier erstellt Maven-Plugin, kann noch etwas refactored werden mit Nutzung von Dependency Injection.

Always rejoice, mit freundlicher Genehmigung meines Lieblingskünstlers

Die Methode im Mojo kann in eine eigene Klasse CommandProviderApi verschoben werden. Ein neues Interface CommandProvider kann erstellt werden. Die erstellen wir hier:

1. Das Interface: „Refactoring eines Maven-Plugins mit Dependency Injection“ weiterlesen

Ein eigenes Maven-Plugin in 15 Minuten inklusive Dokumentation erstellen

Ein eigenes Maven-Plugin zu erstellen ist nicht schwer und ist schnell gemacht. Wir wollen ein Plugin welches einen Verzeichnis Inhalt mit ls -la in das Log schreibt erstellen. Es können aber auch andere Linux Befehle übergeben werden. Hier nun die 6 Schritte mit den Vorlagen die mind. nötig sind.

Freut euch immer
Always rejoice, mit freundlicher Genehmigung meines Lieblingskünstlers

1. Wir legen in Eclipse ein neue Maven Projekt mit Java 1.8 an. mit Artifact Id und Group Id de.wenzlaff.command.maven.plugin

2. In der pom.xml fügen wir die folgenden Abhängikeiten hinzu: „Ein eigenes Maven-Plugin in 15 Minuten inklusive Dokumentation erstellen“ weiterlesen

Jenkins Pipeline mit coolen BuildMonitor in Docker in unter 15 Minuten erstellen

In 15 Minuten kann die erste Jenkins Pipeline mit BuildMonitor Plugin erstellt werden, inklusive erster Installation von Jenkins mit default Plugins. Vorraussetzung ist ein laufender Docker. Der zweite Start geht dann aber noch viel schneller. Hier mal die BuildMonitor Ansicht für zwei Projekte:

Weitere coole Bilder und Beschreibung des BuildMonitors gibt es hier.

Oder etwas anders eingestellt, über das Zahnrad oben rechts: „Jenkins Pipeline mit coolen BuildMonitor in Docker in unter 15 Minuten erstellen“ weiterlesen

Eclipse Photon PlugIn SortIt (1.6.0) zum schnellen sortieren nach Länge, Buchstaben oder Nummern

Sortierung von Text ist doch hin und wieder mal nötig. Das Eclipse Plugin SortIt ist zwar schon älter, vom 11.8.2016, aber es läuft immer noch mit der aktuellen Eclipse Photon Version. Es kann wie alle anderen Plugins installiert werden.
Cooles Plugin
Die Updateseite die unter dem Menü: Help->Install new Software eingetragen werden muss lautet:

Dann durch den Installationsvorgang gehen: „Eclipse Photon PlugIn SortIt (1.6.0) zum schnellen sortieren nach Länge, Buchstaben oder Nummern“ weiterlesen

Wie können UML 2.0 Klassen-Diagramme mit Spring STS (Spring Tool Suite 3.9.4) erstellt werden?

Auch in der aktuellen STS Version, der Spring IDE kann das kostenlose UML Plugin installiert werden.

Es ist super fürs Reverse Engineering, um schnell einen Überblick zu erhalten.

Das Eclipse-Plugin ObjectAid installieren über die Install URL

http://www.objectaid.com/update/current

Dann einfach ein neues Objectaid Diagramm erstellen:

Auf dem Dialog ein paar Einstellungen oder die default belassen: „Wie können UML 2.0 Klassen-Diagramme mit Spring STS (Spring Tool Suite 3.9.4) erstellt werden?“ weiterlesen

Wie wird JUnit 5 (RC3 – Beta) Eclipse Oxygen 4.7.0 Support (Plug-In) installiert?

Heute wurde das JUnit 5 (RC3 – Beta) Plugin für Eclipse Oxygen 4.7.0 veröffentlicht (upgedated). JUnit 5 RC3 wurde schon am 23.8.2017 veröffentlicht. Der JUnit 5 Release Kandidat soll ja noch im 3. Quatal 2017 erscheinen, also im nächsten Monat 🙂

Wie wird das nun installiert?

Das JUnit 5 Plugin gibt es hier.

Einfach diesen Install Button per Drag and Drop in den Eclipse Workspace ziehen:

oder wie in der installations Anleitung beschrieben.

Es öffnet sich dieser Dialog: „Wie wird JUnit 5 (RC3 – Beta) Eclipse Oxygen 4.7.0 Support (Plug-In) installiert?“ weiterlesen

Eclipse PlugIn SortIt zum schnellen sortieren nach Länge, Buchstaben oder Nummern

Sortierung von Text ist doch hin und wieder mal nötig. Das Eclipse Plugin SortIt ist zwar schon älter, läuft aber immer noch mit der aktuellen Eclipse Mars 4.5.0 Version. Es kann wie alle anderen Plugins installiert werden.
Cooles Plugin
Die Updateseite die unter dem Menü: Help->Install new Software eingetragen werden muss lautet:

Dann durch den Installationsvorgang gehen:

SortIt „Eclipse PlugIn SortIt zum schnellen sortieren nach Länge, Buchstaben oder Nummern“ weiterlesen

Eclipse EcoreTools: Wie können *.aird (*.ecore) Modelle per UML unter Eclipse Mars bearbeitet werden?

Mit den Ecore Tools können gut Modelle per UML modelliert und das Java-Modell generiert werden. Die Ecore Tools können leicht über den Menüpunkt: Hilfe -> Eclipse Marketplaces … installiert werden:
ecor tools

Nach einem Neustart können die *.aird (ecore) Dateien über das Menü: Windows-Show View … Model Explorer geöffnet werden:

aird „Eclipse EcoreTools: Wie können *.aird (*.ecore) Modelle per UML unter Eclipse Mars bearbeitet werden?“ weiterlesen

Wie kann der Plug-in Spy für UI Teile oder der Menü Syp auf dem Mac (Win) von Eclipse aufgerufen werden?

Wenn man in Eclipse sehen will, welche UI Komponenten gerade selektiert bzw. aktiv sind, kann der Plug-in Spy verwendet werden. Mit dem kann auch mit nur einen klick auf den Quellcode des jeweiligen aktiven Plug-ins zugegriffen werden. Wie kann der aber auf einem Mac aufgerufen werden (Vier Tasten gleichzeitig): fn+shift+alt+F1 (auf Windows Alt+Shift+F1)
Es erscheint dann solch ein PopUp-Dialog:
Eclipse Spy
und noch ein Beispiel:
Popup Spy

Analog dazu gibt es auch einen Spy für die Menüs, der wird mit fn+shift+alt+F2 (auf Windows Alt+Shift+F2) aufgerufen und dann ein Menüpunkt auswählen, es kommt dann z.B. dieser Dialog:
Menü Spy

Eclipse PlugIn: Wie kann Text im Konsolen Fenster ausgegeben werden?

Manchmal möchte man einfach nur Text in der Konsole ausgeben. Früher, d.h. vor Eclipse 3.0 musste man dazu eine eigene View erzeugen. Das braucht man nun nicht mehr, man kann die vorhandenen generic Log Konsole verwenden.

Aufrufen geht dann einfach so:

Hier die Methode, die die Konsole liefert bzw. erzeugt:

Wir erhalten dann folgenden Ausgabe:

Log Konsole von Eclipse
Log Konsole von Eclipse

Um das zu erreichen, muss noch eine neue Abhängigkeit ( org.eclipse.ui.console) (Dependencies) ergänzt werden:

Abhängigkeit Eclipse View
Was zu folgenden Eintrag im Manifest führt:
Manifest

Eclipse PlugIn: Wie kann ein Logeintrag in der Error Log View erstellt werden?

Bei der PlugIn Programmierung unter Eclipse Luna kann leicht auf die Log-View zugegriffen werden. Hier mal ein kleines Beispiel mit den verschiedenen Loglevel:

So sieht es dann aus:

Eclipse Log Eintrag erstellen
Eclipse Log Eintrag erstellen

Eclipse Plugin: Wie kann der absolute Dateipfad einer selektierten Datei aus der View des Package oder Project Explorer ermittelt werden?

Wie kann in Eclipse Luna 4.4.1 aus einem Plugin der absolute Dateipfad einer selektierten Datei aus dem Package oder Project Exporer ermittelt werden?
Das Selection Service wird ja schön hier beschrieben.
Befindet man sich nicht in einer View, sondern in einer Action, kann folgende Methode verwendet werden:

Der Test liefert jeweils den Pfad inkl. Dateiname:

Braucht man das Plattform Arbeisverzeichnis kann man dies über die folgende static Methode erhalten:

SelBlocks für Selenium installieren oder „Wer testet ist feige“

Das Plug-In SelBlocks für die Selenium IDE darf nicht fehlen. Also über diese Seite installieren und den Browser neu starten:
Bildschirmfoto 2014-10-07 um 19.53.13

Das Plugin ist eine Erweiterung für die Selenium IDE und fügt der IDE die folgenden doch immer nötigen Befehle hinzu:

  • if, elseIf, else
  • try, catch, finally, throw
  • for, foreach, while, continue, break
  • call, function, return
  • loadJsonVars, loadXmlVars, forJson, forXml
  • exitTest

Die Selenium IDE muss natürlich vorhanden sein:
Bildschirmfoto 2014-10-07 um 19.54.42

Eine ausführliche Beschreibung und auch Beispielen sind auf dieser Seite zu finden.

Wie kann das Zest 2.0.0 Plugin (dot4zest) für Graphviz DOT unter Eclipse 4.4 Luna auf einem Mac OS X installiert werden?

Für Eclipse gibt es ein schönes Plugin (dot4zest) zum bearbeiten von DOT Dateien. Wie kann der DOT-Editor installiert werden?

Zuerst das Plugin über den Eclipse Marketplace installieren. Einfach nach zest suchen und das Graphviz DOT for Zest (dot4zest) 2.0.0 installieren:
zest plugin

Dann auf dem Mac, Graphviz installieren. Auf der Konsole mit:
sudo port install graphviz „Wie kann das Zest 2.0.0 Plugin (dot4zest) für Graphviz DOT unter Eclipse 4.4 Luna auf einem Mac OS X installiert werden?“ weiterlesen

Jar2UML Plugin für Eclipse

Cooles Plugin für Eclipse. Verwandelt ein JAR in ein UML.

Install: Per drag and drop diesen Button in den Workspace Juno Workspace (Console) verschieben.

Nach der Installation über das Menü: File-Import-Jar2Uml eines der vier import Filter wählen und die nötige UML Datei erzeugen lassen.

Weitere Details.

Quick-Howto für die Coole Java Template-Erstellung (JaMoPP) mit CommentTemplate ldt. JavaMagazin 1-2013

Oder was ist JaMoPP? Damit es auch unter Eclipse Kepler SR1 läuft (Update: läuft auch unter Eclipse Luna 4.4.0 und Eclipse Mars 4.5.0), zuerst über Eclipse Marketplace den CommentTemplate 0.9.2 installieren:
Bildschirmfoto 2014-05-01 um 21.17.45
Dann diesen Beispiel Code ausführen:

package de.wenzlaff;

import java.util.Date;

import de.devboost.commenttemplate.CommentTemplate;

/**
* 1. Installieren über Eclipse Update oder Marketplace (suchen nach CommentTemplate)
* 2. New PlugIn Projekt
* 3. Add new Dependencies de.devboost.commenttemplate-Version.jar
* 4. Klasse mit Extension Source.java erstellen
* 5. Annotation @CommentTemplate an String Methode mit return null
* 6. JavaDoc Formatierung in Eclipse für das Projekt ausschalten
* 7. Save erzeugt in src-gen-comment-template die generierte Klasse
* 8. Run as
*
* Beispiel Video: http://jamopp.org/index.php/JaMoPP_CommentTemplate
* Anleitung: http://reuseware.org/publications/2012_ACME_CommentTemplate.pdf
*/
„Quick-Howto für die Coole Java Template-Erstellung (JaMoPP) mit CommentTemplate ldt. JavaMagazin 1-2013“ weiterlesen

Zwei Eclipse Plugins für Juno installiert, Grep Konsole und Workspacemechanic.

Cooles Plugin für Eclipse. Die Konsole kann nach Wunsch mit RegEx eingefärbt und verändert werden. Weitere Infos zur Grep-Konsole hier.

Und mit dem Workspacemechanic können Einstellungen gesichert und in andere Workspaces importiert werden.

Die Einstellungen für die Grep-Konsole liegen unter .metadata/.plugins/org.eclipse.core.runtime/.settings/com.musgit.eclipse.grepconsole.prefs