Dynamische Projekteigenschaften mit Maven Resources Plugin und Filter

Das Maven Resources Plugin wird häufig zum Filtern von Dateien verwendet, wodurch Platzhalter in Ressourcendateien durch in der pom.xml definierte Werte ersetzt werden können. Im Kontext der Ausgabe der Versionsnummer kann dieses Plugin dynamische Projekteigenschaften (Version, artifactId, groupId) während des Build-Prozesses direkt in Ressourcendateien einfügen. Die Maven-Koordinaten bestehen aus groupId, artifactId und version.

Maven verwendet Konventionen für die Namensgebung von Koordinaten. Die groupId identifiziert eindeutig eine Projektgruppe über alle anderen Gruppen hinweg. Sie sollte den Java-Paketnamensregeln folgen, beginnend mit einem umgekehrten Domainnamen, den Sie kontrollieren. Die artifactId ist der Name, unter dem das Projekt bekannt ist. Zusammen mit der groupId erzeugt sie einen Schlüssel, der dieses Projekt von allen anderen Projekten unterscheidet. Die version gibt an, um welche Version es sich handelt. „Dynamische Projekteigenschaften mit Maven Resources Plugin und Filter“ weiterlesen

Sierpinski-Dreieck: Mal was anderes als der Mega-Hack der Bybit Exchange mit ca. 401000 ETH ( ca. 1,4 Milliarden Dollar ) Verlust

Der Crypto-Bereich ist in Aufregung, weil Bybit von einem Ethereum-Cold-Wallet ca. 1,4 Milliarden Dollar geklaut wurden. Wie war das technisch möglich? Hier eine Erklärungsmöglichkeit:

Aber kommen wir nun zu etwas einfacheren und auch sehr interessanten Thema: Das Sierpinski-Dreieck. „Sierpinski-Dreieck: Mal was anderes als der Mega-Hack der Bybit Exchange mit ca. 401000 ETH ( ca. 1,4 Milliarden Dollar ) Verlust“ weiterlesen

Wahrscheinlichkeitsrechnung mit dem Satz von Bayes nicht nur für Versicherungen und Medizin

Der Satz von Bayes ist ein grundlegendes Theorem in der Wahrscheinlichkeitsrechnung, das den Zusammenhang zwischen bedingten Wahrscheinlichkeiten beschreibt.

Der Satz von Bayes ist ein spannendes Werkzeug aus der Welt der Mathematik, das uns hilft, Wahrscheinlichkeiten zu verstehen und zu berechnen. Er wird in vielen Bereichen angewendet, von der Medizin über Künstliche Intelligenz bis hin zu Alltagssituationen. Aber was genau besagt dieser Satz, und warum ist er so nützlich?

Was ist der Satz von Bayes? „Wahrscheinlichkeitsrechnung mit dem Satz von Bayes nicht nur für Versicherungen und Medizin“ weiterlesen

Der Brier-Score (Brier-Wert) nicht nur für Prognostiker

Der Brier-Wert ist ein effizientes und einfaches Maß zur Bewertung der Genauigkeit probabilistischer Vorhersagen. Durch die Kombination aus einfacher Berechnung und aussagekräftiger Analyse ist er ein weit verbreitetes Werkzeug in der Statistik und im maschinellen Lernen.

In der Praxis hilft er, die Qualität von Vorhersagen quantitativ zu bewerten und kann zur Verbesserung von Modellen und Algorithmen beitragen. Die Bezeichnung „Brier-Wert“ stammt von dem amerikanischen Meteorologen Glenn W. Brier, der das Maß (1950 – VERIFICATION OF FORECASTS EXPRESSED IN TERMS OF PROBABILITY) entwickelte und damit die Grundlage legte.

Der Brier-Wert wird häufig in Bereichen wie Meteorologie, Medizin, Finanzwesen, Wahlprognosen und maschinellem Lernen verwendet, um die Genauigkeit von Prognosen zu bewerten. Er ist besonders nützlich bei binären Klassifikationsproblemen, bei denen das Modell Wahrscheinlichkeiten für die Zugehörigkeit zu einer von zwei Klassen liefert (z. B. Regenwahrscheinlichkeit).

Wir erstellen zur Verdeutlichung mal ein JSon Datei mit ein paar Daten von der Reserve Bank of Australia, die bei ihren monatlichen Sitzungen Zinssätze beschließt. Die RBA lässt die Zinssätze im Allgemeinen unverändert, erhöht sie jedoch manchmal und senkt sie manchmal, je nach wirtschaftlicher Lage. Die Daten stammen aus diesem Artikel und wurden von mir in das JSon-Format überführt. „Der Brier-Score (Brier-Wert) nicht nur für Prognostiker“ weiterlesen

Java Programm zur Goldbachsche Vermutung mit Heap Analyse

Die Goldbachsche Vermutung ist eine der ältesten ungelösten Probleme in der Mathematik, die der Mathematiker Christian Goldbach 1742 in einem Brief an Leonhard Euler formulierte. Sie besagt:

Jede gerade Zahl größer als 2 lässt sich als Summe zweier Primzahlen darstellen.

Diese Vermutung ist in zwei Formen bekannt: „Java Programm zur Goldbachsche Vermutung mit Heap Analyse“ weiterlesen

ArchUnit Version 1.2.1 veröffentlicht für eine kontinuierliche Überwachung der Architekturstandards

Das Java Framework ArchUnit ist ein leistungsstarkes Werkzeug für die Gewährleistung von Softwarearchitektur und Code-Qualität in Java-Projekten.

Durch die Möglichkeit, deklarative Regeln zu erstellen und automatisierte Tests zu schreiben, hilft ArchUnit, konsistente und hochwertige Software zu entwickeln. „ArchUnit Version 1.2.1 veröffentlicht für eine kontinuierliche Überwachung der Architekturstandards“ weiterlesen

Quarkus CO2 Server 2.x auf Version 3.4.1 Migration mit update Tool oder per Hand

Der 3. Oktober ist in Deutschland ein Feiertag, wenn das nicht Grund genug ist, mal die Migration eines Quarkus 2.0 CO-2 Servers auf 3.4.1 durchzuführen.

Am dritten Oktober, freu’n wir uns sehr,
Ein Feiertag, der uns vereint, ist hier.
Die Einheit Deutschlands, im Glanz erstrahlt,
Wie Quarkus, stark und neu, die Zukunft malt.

Die Alte 2er Version, längst vergangen Zeit,
Jetzt weichen muss, für Neues, das gedeiht.
Wie Quarkus 3er, frisch und schnell, die Zukunft weist,
Die Migration, sie kommt, wir sind bereit.

Die Server, stark wie Eichen im Revier,
Wie Quarkus, schnell und stabil, das ist ihr Tier.
Die Zukunft winkt, wir schreiten voran,
Mit Feiern und Migration, Hand in Hand.

-Thomas Wenzlaff

Es gibt da ja automatisch Scripte und eine Anleitung.

Es war aber doch etwas Handarbeit angesagt, da das „Quarkus CO2 Server 2.x auf Version 3.4.1 Migration mit update Tool oder per Hand“ weiterlesen

SSL/TLS-Zertifikat mit Elliptische-Kurven-Kryptografie (ECC) secp256k1 und eigener CA erzeugen und per Java einlesen auf dem Raspberry Pi

In der heutigen digitalen Welt ist die Sicherheit von Daten und Kommunikation von höchster Bedeutung. SSL/TLS-Zertifikate spielen eine entscheidende Rolle bei der Verschlüsselung von Datenübertragungen im Internet und der Gewährleistung der Vertraulichkeit und Integrität von Informationen. Das Open-Source-Programm xca ist eine leistungsstarke und vielseitige Anwendung, die die Verwaltung von SSL/TLS-Zertifikaten und vieles mehr erleichtert.

Es kann einfach per sudo apt install xca installiert werden und steht dann im Zubehör-Menü zur Verfügung:

„SSL/TLS-Zertifikat mit Elliptische-Kurven-Kryptografie (ECC) secp256k1 und eigener CA erzeugen und per Java einlesen auf dem Raspberry Pi“ weiterlesen

Die wichtigsten Unterschiede zwischen Trust Stores und Key Stores für Java und HTTPS

Die wichtigsten Unterschiede zwischen Trust Stores und Key Stores für Java und HTTPS.

Der Key Store speichert private Schlüssel und zugehörige Zertifikate zur Identifizierung und Authentifizierung.
Der Trust Store speichert Zertifikate von vertrauenswürdigen Zertifizierungsstellen zur Überprüfung der Glaubwürdigkeit von Remote-Entitäten.

Beide Speicher sind wichtig, um eine sichere Kommunikation über HTTPS und andere verschlüsselte Protokolle zu gewährleisten. Der Key Store ermöglicht die Identifizierung und Authentifizierung, während der Trust Store das Vertrauen in die Gegenstelle sicherstellt. Hier die Unterschiede als Mindmap und als Tabelle:

„Die wichtigsten Unterschiede zwischen Trust Stores und Key Stores für Java und HTTPS“ weiterlesen

Das „Haus vom Nikolaus“ mit seinen 88 Möglichkeiten und seine Bedeutung in der Graphentheorie

Das „Haus vom Nikolaus„, ein einfaches geometrisches Muster aus fünf Linien, das die Form eines stilisierten Hauses darstellt, mag auf den ersten Blick wie eine unschuldige Kindermalerei wirken. Doch hinter diesem scheinbar simplen Muster verbirgt sich eine faszinierende Verbindung zur Graphentheorie, einem Teilgebiet der Mathematik, das sich mit den Eigenschaften und Beziehungen von Graphen beschäftigt. Dann mal los, und ein kleines Java Programm dazu.

Was ist das „Haus vom Nikolaus“? „Das „Haus vom Nikolaus“ mit seinen 88 Möglichkeiten und seine Bedeutung in der Graphentheorie“ weiterlesen

Every main method deserves picocli!

Picocli: Eine leistungsstarke Bibliothek für die Erstellung von Befehlszeilenanwendungen. Hier habe ich schon oft davon berichtet. Da es im Juni die Version 4.7.4 gab, mal hier ein Beispiel dazu.

Die Entwicklung von Software, sei es in Form von Anwendungen oder Tools, erfordert oft die Integration von Befehlszeilenfunktionalität, um Benutzern eine effiziente Interaktion mit der Software zu ermöglichen. Eine der bemerkenswertesten Bibliotheken, die diese Aufgabe erleichtert, ist „Picocli„. Picocli ist eine Java-basierte Open-Source-Bibliothek, die Entwicklern dabei hilft, robuste und benutzerfreundliche Befehlszeilenanwendungen zu erstellen.

Was ist Picocli? „Every main method deserves picocli!“ weiterlesen

Maven Embedder

Der „Maven Embedder“ ist eine Möglichkeit, Maven in Java-Anwendungen einzubetten und Maven-Funktionen programmatisch aufzurufen. Damit kannst du Maven in deinem Code verwenden, um Build- und Dependency-Management-Funktionen auszuführen, ohne externe Prozesse aufrufen zu müssen.

Man braucht nur eine Abhängigkeit:

Das Apache Maven Build-Tool ist ein weit verbreitetes Werkzeug in der Java-Entwicklungswelt, das die Automatisierung von Build-, Test- und Abhängigkeitsverwaltungsaufgaben erleichtert. Normalerweise wird Maven über die Befehlszeile oder in Build-Skripten verwendet. In einigen Szenarien kann es jedoch erforderlich sein, Maven in Java-Anwendungen einzubetten, um Maven-Funktionen programmatisch aufzurufen. Das Maven Embedder ermöglicht genau das. Was ist der Maven Embedder? „Maven Embedder“ weiterlesen

Rot oder Grün, das ist hier die Frage

Zum Wochenende mal ein kleines Quiz. Läuft der Test grün oder rot?

Die Lösung … „Rot oder Grün, das ist hier die Frage“ weiterlesen

Unit test your Java architecture a new release of ArchUnit (v1.1.0) is out.

Leider keine Zeit für eine Reise nach Nashville, TN zum Patient Blood Management and Blood Health: They Top the Charts! Annual Meeting. Dann mal die gestern veröffentlichte Version von ArchUnit testen.

Das Java Framework ArchUnit ist ein leistungsstarkes Werkzeug für die Gewährleistung von Softwarearchitektur und Code-Qualität in Java-Projekten. Durch die Möglichkeit, deklarative Regeln zu erstellen und automatisierte Tests zu schreiben, hilft ArchUnit, konsistente und hochwertige Software zu entwickeln. „Unit test your Java architecture a new release of ArchUnit (v1.1.0) is out.“ weiterlesen