Ab Januar 2019 führt Oracle ein Abo-Modell, genannt Subscription, für produktiv genutzte Java-Anwendungen ein. Die Einführung ist rückwirkend, somit sind auch Java Anwendungen, die Java 8 benutzen betroffen. Das Ende von kostenlosem Java? Die Verwendung von Java für Entwicklung, Test, POC und Demo bleibt weiterhin kostenlos; auch wird Oracle sich w...
In der Entwicklungsphase eines jeden Software-Projektes ist eine frühe Erkennung von Fehlern unabdingbar. Bei großen Projekten mit vielen Abhängigkeiten kann es mühsam und langwierig sein, das gesamte Projekt auf dem lokalen Rechner zu kompilieren und zu testen. Abhilfe hierbei können Continuous Integration (CI) und Delivery (CD) Plattformen w...
Dass spezifische Funktionalitäten in unterschiedliche Services gebündelt sind, ist ja nichts Neues. Und dass die Funktionalitäten eines Services oft in einem Interface definiert und dann in der einer anderen Klasse implementiert werden, auch nicht. Doch mit dem in Java 9 dazugekommenem Modul-System können nun auch einzelne Services modularisiert we...
Seit Java 9 lassen sich mehrere Pakete und die darin enthaltenen Klassen zu Modulen zusammenfassen. Dies ermöglicht eine bessere Kontrolle, auf welche Klassen von außerhalb des Modules zugegriffen werden darf. Ein Modul wird durch einen sogenannten Modul-Deskriptor definiert, der sich auf oberster Paketebene im Modul befindet und per Definition „mo...
Java 9 bringt eine neue Exception Klasse mit. Ist das Grund zur Freude? Ich finde ja! Mit diesem Blogpost möchte ich euch erklären, wie wir mit der neu dazugekommenen Ausnahme InaccessibleObjectException umgehen. Zu allererst ein wenig Theorie. Wie man der offiziellen API entnehmen kann, gibt es die InaccessibleObjectException K...
Wird eine Software vom Kunden eingekauft anstatt diese selbst zu entwickeln, wird sie in vielen Fällen zunächst angepasst, bevor sie in den Betrieb geht. Die Softwarehersteller bieten hierfür meist die Möglichkeit mittels des Software Development Kit (SDK) einen Teil der Software zu personalisieren, um die Anwendung an die Wünsche des Kunden anzupa...