From 212a1084035cc2c32106dd2a3b0fc0d8fea7f35f Mon Sep 17 00:00:00 2001
From: stedS <sven.steddin@reutlingen-university.de>
Date: Tue, 10 Nov 2020 23:34:03 +0100
Subject: [PATCH] =?UTF-8?q?Ergaenzung=20Codebeispiel=20f=C3=BCr=20Erzeugun?=
 =?UTF-8?q?g=20von=20Modulen?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 VL04-02/module_con/cmdlines.txt                 | 13 +++++++++++++
 .../meti/inf3vl/modtest_lib/blabla_machine.java | 17 +++++++++++++++++
 .../de.meti.inf3vl.modtest_lib/module-info.java |  3 +++
 .../de/meti/inf3vl/modtest_main/mainclass.java  |  8 ++++++++
 .../module-info.java                            |  3 +++
 5 files changed, 44 insertions(+)
 create mode 100644 VL04-02/module_con/cmdlines.txt
 create mode 100644 VL04-02/module_con/src/de.meti.inf3vl.modtest_lib/de/meti/inf3vl/modtest_lib/blabla_machine.java
 create mode 100644 VL04-02/module_con/src/de.meti.inf3vl.modtest_lib/module-info.java
 create mode 100644 VL04-02/module_con/src/de.meti.inf3vl.modtest_main/de/meti/inf3vl/modtest_main/mainclass.java
 create mode 100644 VL04-02/module_con/src/de.meti.inf3vl.modtest_main/module-info.java

diff --git a/VL04-02/module_con/cmdlines.txt b/VL04-02/module_con/cmdlines.txt
new file mode 100644
index 0000000..fd8c602
--- /dev/null
+++ b/VL04-02/module_con/cmdlines.txt
@@ -0,0 +1,13 @@
+javac -d bin --module-source-path src src\de.meti.inf3vl.modtest_main\*.java src\de.meti.inf3vl.modtest_main\de\meti\inf3vl\modtest_main\*.java
+
+java --module-path bin -m de.meti.inf3vl.modtest_main/de.meti.inf3vl.modtest_main.mainclass
+
+
+jar --create --file modules/de.meti.inf3vl.modtest_main-1.0.jar --module-version 1.0 --main-class de.meti.inf3vl.modtest_main.mainclass -C bin/de.meti.inf3vl.modtest_main .
+jar --create --file modules/de.meti.inf3vl.modtest_lib-1.0.jar --module-version 1.0 -C bin/de.meti.inf3vl.modtest_lib .
+
+jLink -p "%JAVA_HOME%\jmods;modules" --add-modules de.meti.inf3vl.modtest_main --output deployment --strip-debug --compress=2 –-verbose
+
+jLink -p "%JAVA_HOME%\jmods;modules" --add-modules de.meti.inf3vl.modtest_main --launcher module_con=de.meti.inf3vl.modtest_main/de.meti.inf3vl.modtest_main.mainclass --output deployment --strip-debug --compress=2 –-verbose
+
+java -m de.meti.inf3vl.modtest_main
diff --git a/VL04-02/module_con/src/de.meti.inf3vl.modtest_lib/de/meti/inf3vl/modtest_lib/blabla_machine.java b/VL04-02/module_con/src/de.meti.inf3vl.modtest_lib/de/meti/inf3vl/modtest_lib/blabla_machine.java
new file mode 100644
index 0000000..1b9b9b5
--- /dev/null
+++ b/VL04-02/module_con/src/de.meti.inf3vl.modtest_lib/de/meti/inf3vl/modtest_lib/blabla_machine.java
@@ -0,0 +1,17 @@
+package de.meti.inf3vl.modtest_lib;
+import static java.lang.System.out;
+public class blabla_machine {
+	private static blabla_machine bm = null;
+	private blabla_machine() {
+		//Konstruktor private --> factory Methode erforderlich
+	}	
+	public static blabla_machine blabla_machine_factory() {
+		if (bm == null) {
+			bm = new blabla_machine();
+		}
+		return bm;
+	}
+	public void doBlabla(String nonsens) {
+		out.println("can't stop my " + nonsens + " blabla");
+	}
+}
diff --git a/VL04-02/module_con/src/de.meti.inf3vl.modtest_lib/module-info.java b/VL04-02/module_con/src/de.meti.inf3vl.modtest_lib/module-info.java
new file mode 100644
index 0000000..8e5a44d
--- /dev/null
+++ b/VL04-02/module_con/src/de.meti.inf3vl.modtest_lib/module-info.java
@@ -0,0 +1,3 @@
+module de.meti.inf3vl.modtest_lib {
+	exports de.meti.inf3vl.modtest_lib;
+} 
diff --git a/VL04-02/module_con/src/de.meti.inf3vl.modtest_main/de/meti/inf3vl/modtest_main/mainclass.java b/VL04-02/module_con/src/de.meti.inf3vl.modtest_main/de/meti/inf3vl/modtest_main/mainclass.java
new file mode 100644
index 0000000..f48a39a
--- /dev/null
+++ b/VL04-02/module_con/src/de.meti.inf3vl.modtest_main/de/meti/inf3vl/modtest_main/mainclass.java
@@ -0,0 +1,8 @@
+package de.meti.inf3vl.modtest_main;
+import de.meti.inf3vl.modtest_lib.blabla_machine;
+
+public class mainclass {
+	public static void main(String[] args) {
+		blabla_machine.blabla_machine_factory().doBlabla("brrrchrr");
+	}
+}
diff --git a/VL04-02/module_con/src/de.meti.inf3vl.modtest_main/module-info.java b/VL04-02/module_con/src/de.meti.inf3vl.modtest_main/module-info.java
new file mode 100644
index 0000000..a60a19f
--- /dev/null
+++ b/VL04-02/module_con/src/de.meti.inf3vl.modtest_main/module-info.java
@@ -0,0 +1,3 @@
+module de.meti.inf3vl.modtest_main {
+	requires de.meti.inf3vl.modtest_lib;
+}
-- 
GitLab