Wie kann eine Datei-Liste aller Maven Abhängigkeiten eines Projektes erstellt werden?

Manchmal will man eine Liste aller Abhängigkeite eines Maven-Projektes in einer eigenen Datei.

Das geht einfach mit dem maven-dependency-plugin.

Die effiziente Verwaltung von Abhängigkeiten ist ein grundlegendes Element bei der Entwicklung von Java-Projekten. Maven ist ein weit verbreitetes Build-Management-Tool, das Entwicklern ermöglicht, Abhängigkeiten zu verwalten und den Build-Prozess zu automatisieren. Das Maven-Dependency-Plugin ist eine Erweiterung von Maven, die speziell für die Handhabung von Abhängigkeiten entwickelt wurde.

Also einfach das Plugin in der pom.xml einbinden z.B.: „Wie kann eine Datei-Liste aller Maven Abhängigkeiten eines Projektes erstellt werden?“ weiterlesen

Software Bill of Materials (SBOM) mit CycloneDX Maven Plugin leicht erzeugen

In einer zunehmend vernetzten und digitalisierten Welt sind Softwarekomponenten und -anwendungen allgegenwärtig. Unternehmen verlassen sich auf komplexe Softwarelösungen, um ihre Geschäftsprozesse zu unterstützen und innovative Produkte und Dienstleistungen anzubieten. Angesichts der wachsenden Bedrohungen durch Sicherheitslücken und Compliance-Anforderungen wird die Transparenz über die verwendeten Softwarekomponenten immer wichtiger. Hier kommt die Software Bill of Materials (SBOM) ins Spiel, die eine detaillierte und strukturierte Auflistung aller Softwarekomponenten eines Projekts bietet. Vor einem Jahr hatte ich schon mal davon berichtet. In diesem Artikel werden die Vorteile einer SBOM genauer betrachtet.

Transparenz über Softwarekomponenten:
Eine SBOM ermöglicht eine umfassende Transparenz über die verwendeten Softwarekomponenten in einem Projekt. Sie listet alle Komponenten auf, einschließlich Open-Source-Software, Drittanbieterbibliotheken und proprietäre Codebasis. Dies schafft Klarheit über den Ursprung und die Lizenzierung der Software, was für die Einhaltung von Compliance-Anforderungen und die Vermeidung von rechtlichen Problemen von entscheidender Bedeutung ist.
„Software Bill of Materials (SBOM) mit CycloneDX Maven Plugin leicht erzeugen“ 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

Wie können UML 2.0 Klassen-Diagramme mit Eclipse Plugin ObjectAid auch in Version 2022-03 erstellt werden?

Das Eclipse-Plugin ObjectAid installieren über die Install URL http://www.objectaid.com/update/current funktioniert nicht mehr. Das Plug-In ist dafür zu alt. Die Seite gibt es nicht mehr.

Man kann sich aber noch das Plugin über diese URL https://web.archive.org/web/*/http://www.objectaid.com/update/current/objectaid-1.2.4.zip der Wayback Maschine landen. Das Zip dann lokal in ein Verzeichnis auspacken und über die local Funktion installieren:

Dann nach einem Restart, können die UML Diagramme leicht erstellt werden.

Hier ein Beispiel meiner Blockchain, in einen frühen Stadium bei XBT 38 k$ und Block Nr. 734258: „Wie können UML 2.0 Klassen-Diagramme mit Eclipse Plugin ObjectAid auch in Version 2022-03 erstellt werden?“ weiterlesen

Vergleich GraalVM nativ vs. herkömmlich mit Quarkus auf MacOS

Heute mal ein Vergleich mit einem Beispiel-Quarkus-REST Service normal vs. nativ.

Um die Größe und die Buildzeit zu vergleichen. Hier das Ergebnis vorweg:

Also native gebaute Apps sind wesentlich länger zur Buildzeit dafür laufen sie aber auch wesentlich schneller und sind dann auch auf das jeweilige Betriebssystem beschränkt.


Um auf einen MacOs Quarkus auch nativ zu kompilieren muss die GraalVM und das Native-Image installiert sein.

Also installieren wir die GraalVM auf dem Mac mit Port: „Vergleich GraalVM nativ vs. herkömmlich mit Quarkus auf MacOS“ weiterlesen