From b1dde28ba5ae5da78ebc210c5d5be0f500b7472d Mon Sep 17 00:00:00 2001 From: = Date: Thu, 14 May 2026 13:08:30 +0200 Subject: [PATCH 1/7] Feat: Updated pom and Launch config Added maven shade to export with javafx. Also fixed main class structure to allow .jar to work. --- pom.xml | 22 ++++++++++++++++++- .../idi/idatt2003/g40/mappe/Launcher.java | 7 ++++++ .../ntnu/idi/idatt2003/g40/mappe/Main.java | 4 ++++ 3 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Launcher.java diff --git a/pom.xml b/pom.xml index f5081aa..56c4c21 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ edu.ntnu.idi.idatt2003.g40.mappe mappe - 1.1-SNAPSHOT + 1.0.0 25 @@ -39,6 +39,26 @@ + + org.apache.maven.plugins + maven-shade-plugin + 3.5.0 + + + package + + shade + + + + + edu.ntnu.idi.idatt2003.g40.mappe.Launcher + + + + + + org.apache.maven.plugins maven-compiler-plugin diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Launcher.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Launcher.java new file mode 100644 index 0000000..7d78de0 --- /dev/null +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Launcher.java @@ -0,0 +1,7 @@ +package edu.ntnu.idi.idatt2003.g40.mappe; + +public class Launcher { + static void main(String[] args) { + Main.main(args); + } +} \ No newline at end of file diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java index b94ca01..ded0116 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java @@ -40,6 +40,10 @@ * */ public class Main extends Application { + static void main(String[] args) { + launch(args); + } + /** * {@inheritDoc} * */ From 45d192f1453838c38be1ed98cc366d0ba8c7e31d Mon Sep 17 00:00:00 2001 From: Tommy Aas Hjelle Date: Thu, 14 May 2026 13:27:40 +0200 Subject: [PATCH 2/7] Update buildOnRelease.yml --- .github/workflows/buildOnRelease.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/buildOnRelease.yml b/.github/workflows/buildOnRelease.yml index 0b577e9..11d2b8e 100644 --- a/.github/workflows/buildOnRelease.yml +++ b/.github/workflows/buildOnRelease.yml @@ -26,7 +26,8 @@ jobs: echo "JAR_NAME=APPLICATION-$tag.jar" >> $env:GITHUB_ENV - name: Rename JAR - run: mv target/*.jar $env:JAR_NAME + run: mv target/[!original]*.jar $env:JAR_NAME + - uses: softprops/action-gh-release@v1 with: From 8c0f371c5218e6adf48e718257f794323e42d6dc Mon Sep 17 00:00:00 2001 From: Tommy Aas Hjelle Date: Thu, 14 May 2026 13:30:38 +0200 Subject: [PATCH 3/7] Update buildOnRelease.yml --- .github/workflows/buildOnRelease.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/buildOnRelease.yml b/.github/workflows/buildOnRelease.yml index 11d2b8e..d60f06d 100644 --- a/.github/workflows/buildOnRelease.yml +++ b/.github/workflows/buildOnRelease.yml @@ -23,7 +23,7 @@ jobs: - name: Set versioned JAR name run: | $tag = "${{ github.ref_name }}" - echo "JAR_NAME=APPLICATION-$tag.jar" >> $env:GITHUB_ENV + echo "JAR_NAME=MillionsG40-$tag.jar" >> $env:GITHUB_ENV - name: Rename JAR run: mv target/[!original]*.jar $env:JAR_NAME From 59f22d5f94e343c115df40fae41c723109c269ec Mon Sep 17 00:00:00 2001 From: = Date: Thu, 14 May 2026 15:00:35 +0200 Subject: [PATCH 4/7] Fix: Added classifier for uber jar --- pom.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pom.xml b/pom.xml index 56c4c21..413910e 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,10 @@ shade + true + shaded + edu.ntnu.idi.idatt2003.g40.mappe.Launcher From 16733b3713fadb8a6ec6a314c2c83887fb65df68 Mon Sep 17 00:00:00 2001 From: Tommy Aas Hjelle Date: Thu, 14 May 2026 15:01:43 +0200 Subject: [PATCH 5/7] Update buildOnRelease.yml --- .github/workflows/buildOnRelease.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/buildOnRelease.yml b/.github/workflows/buildOnRelease.yml index d60f06d..bf03239 100644 --- a/.github/workflows/buildOnRelease.yml +++ b/.github/workflows/buildOnRelease.yml @@ -26,7 +26,7 @@ jobs: echo "JAR_NAME=MillionsG40-$tag.jar" >> $env:GITHUB_ENV - name: Rename JAR - run: mv target/[!original]*.jar $env:JAR_NAME + run: mv target/*-shaded.jar $env:JAR_NAME - uses: softprops/action-gh-release@v1 From 8e72726901cbdda6189f70b22c3455447482d40f Mon Sep 17 00:00:00 2001 From: = Date: Thu, 14 May 2026 15:15:31 +0200 Subject: [PATCH 6/7] Fix: Updated FileParser to work in exported .jar --- src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java | 2 +- .../ntnu/idi/idatt2003/g40/mappe/service/FileParser.java | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java index ded0116..691eaa7 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java @@ -61,7 +61,7 @@ public void start(final Stage stage) throws Exception { ViewManager viewManager = new ViewManager(stage, eventManager); List stocksInFile; - FileParser parser1 = new FileParser("src/main/resources/dummydata.txt"); + FileParser parser1 = new FileParser("/dummydata.txt"); FileConverter converter1 = new FileConverter(); stocksInFile = converter1.getStocksFromStrings(parser1.readFile()); diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/service/FileParser.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/service/FileParser.java index 9d0bf27..481d423 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/service/FileParser.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/service/FileParser.java @@ -1,9 +1,8 @@ package edu.ntnu.idi.idatt2003.g40.mappe.service; -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.IOException; +import java.io.*; import java.math.BigDecimal; +import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; @@ -120,8 +119,8 @@ public FileParser(final String pathName) { * */ public List readFile() throws IOException { - Path path = Paths.get(pathName); - try (BufferedReader bufferedReader = Files.newBufferedReader(path)) { + try (InputStream inputStream = getClass().getResourceAsStream(pathName); + BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, StandardCharsets.UTF_8))) { List allLines = bufferedReader.readAllLines(); List readableLines = From 7070eeaa0b5a77ec1f9330cea85ae78940334cde Mon Sep 17 00:00:00 2001 From: = Date: Thu, 14 May 2026 15:22:54 +0200 Subject: [PATCH 7/7] Update FileParserTest.java --- .../idi/idatt2003/g40/mappe/service/FileParserTest.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/service/FileParserTest.java b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/service/FileParserTest.java index e751602..7d87b1a 100644 --- a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/service/FileParserTest.java +++ b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/service/FileParserTest.java @@ -13,7 +13,9 @@ class FileParserTest { - private final String testStockDataPath = "src/main/resources/testStockData.txt"; + private final String testStockDataPath = "/testStockData.txt"; + + private final String absoluteTestStockDataPath = "src/main/resources/testStockData.txt"; FileParser fileParser; private final String validStockFromFile = "NVID, Nvidida Corporation, 241.591"; @@ -29,7 +31,7 @@ class FileParserTest { @BeforeEach void setUp() throws Exception { fileParser = new FileParser(testStockDataPath); - Path path = Paths.get(testStockDataPath); + Path path = Paths.get(absoluteTestStockDataPath); allLines = Files.readAllLines(path); try { validStocks = fileParser.readFile();