From d1a5fb8e98a6676247e5acab67e1e10dd208444f Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Mon, 4 Dec 2023 18:30:36 +0100 Subject: [PATCH 01/11] FIX: Logging message from schematron lib - added slf4j noop binding to suppress logging messages from schematron lib; - fixed Saxon version to match schematron lib. --- odf-core/pom.xml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/odf-core/pom.xml b/odf-core/pom.xml index 7990097e..ff7e98ab 100644 --- a/odf-core/pom.xml +++ b/odf-core/pom.xml @@ -50,7 +50,13 @@ net.sf.saxon Saxon-HE - 12.3 + 11.5 + + + + org.slf4j + slf4j-nop + 2.0.7 From b3ed6782bad1418afd0d26193455243a74f276ac Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 10:18:03 +0100 Subject: [PATCH 02/11] TEST: Added batch file test to actions. --- .github/workflows/test-pr.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index d1f1f590..54a7bbd9 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -31,3 +31,9 @@ jobs: - name: Test with Maven if: (matrix.java-version == 8) run: mvn --batch-mode verify -DjacocoAgg + - name: Test build package on Windows + if: (matrix.os == 'windows-latest') + run: ./odf-validator.bat --version + - name: Test build package on Ubuntu + if: (matrix.os == 'ubuntu-latest') + run: ./odf-validator --version From 4ec014f05f51d26591ba2e2bfb7c672477cb123e Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 11:47:29 +0100 Subject: [PATCH 03/11] FIX: Version numbers in batch scripts - added versioned placeholder scripts to `src/main/resources/org/openpreservation/odf/batch`; - added maven resource task to copy and filter batch scripts and replace version placeholders with project version. --- odf-validator | 2 +- odf-validator.bat | 2 +- pom.xml | 25 ++++ .../openpreservation/odf/batch/odf-validator | 82 +++++++++++++ .../odf/batch/odf-validator.bat | 116 ++++++++++++++++++ 5 files changed, 225 insertions(+), 2 deletions(-) create mode 100755 src/main/resources/org/openpreservation/odf/batch/odf-validator create mode 100644 src/main/resources/org/openpreservation/odf/batch/odf-validator.bat diff --git a/odf-validator b/odf-validator index 16061e74..bc204b0b 100755 --- a/odf-validator +++ b/odf-validator @@ -78,5 +78,5 @@ fi exec "$JAVACMD" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions \ -Dapp.name="ODF Validator" \ - -jar target/odf-validator-0.1.0-SNAPSHOT-jar-with-dependencies.jar \ + -jar target/odf-validator-0.9.1-jar-with-dependencies.jar \ "$@" diff --git a/odf-validator.bat b/odf-validator.bat index 6861c682..2be1e18b 100644 --- a/odf-validator.bat +++ b/odf-validator.bat @@ -85,7 +85,7 @@ if NOT "%CLASSPATH_PREFIX%" == "" set CLASSPATH=%CLASSPATH_PREFIX%;%CLASSPATH% @REM Reaching here means variables are defined and arguments have been captured :endInit -"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar target/odf-validator-0.1.0-SNAPSHOT-jar-with-dependencies.jar %CMD_LINE_ARGS% +"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar target/odf-validator-0.9.1-jar-with-dependencies.jar %CMD_LINE_ARGS% if %ERRORLEVEL% NEQ 0 goto error goto end diff --git a/pom.xml b/pom.xml index 98796659..dd41709e 100644 --- a/pom.xml +++ b/pom.xml @@ -227,6 +227,31 @@ deploy + + org.apache.maven.plugins + maven-resources-plugin + + + + verapdf-scripts + validate + + copy-resources + + + + ./ + + + + src/main/resources/org/openpreservation/odf/batch + true + + + + + + diff --git a/src/main/resources/org/openpreservation/odf/batch/odf-validator b/src/main/resources/org/openpreservation/odf/batch/odf-validator new file mode 100755 index 00000000..cb5cad00 --- /dev/null +++ b/src/main/resources/org/openpreservation/odf/batch/odf-validator @@ -0,0 +1,82 @@ +#!/bin/sh + +# resolve links - $0 may be a softlink +PRG="$0" + +while [ -h "$PRG" ]; do + ls=$(ls -ld "$PRG") + link=$(expr "$ls" : '.*-> \(.*\)$') + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=$(dirname "$PRG")/"$link" + fi +done + +PRGDIR=$(dirname "$PRG") +BASEDIR=$(cd "$PRGDIR/" >/dev/null || exit; pwd) + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +case "$(uname)" in + CYGWIN*) cygwin=true ;; + Darwin*) darwin=true + if [ -z "$JAVA_VERSION" ] ; then + JAVA_VERSION="CurrentJDK" + else + echo "Using Java version: $JAVA_VERSION" + fi + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + JAVA_HOME=$(/usr/libexec/java_home) + else + JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/${JAVA_VERSION}/Home + fi + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=$(java-config --jre-home) + fi +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=$(cygpath --unix "$JAVA_HOME") + [ -n "$CLASSPATH" ] && CLASSPATH=$(cygpath --path --unix "$CLASSPATH") +fi + +# If a specific java binary isn't specified search for the standard 'java' binary +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD=$(which java) + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." 1>&2 + echo " We cannot execute $JAVACMD" 1>&2 + exit 1 +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=$(cygpath --path --windows "$JAVA_HOME") + [ -n "$HOME" ] && HOME=$(cygpath --path --windows "$HOME") + [ -n "$BASEDIR" ] && BASEDIR=$(cygpath --path --windows "$BASEDIR") +fi + +exec "$JAVACMD" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions \ + -Dapp.name="ODF Validator" \ + -jar target/odf-validator-${project.version}-jar-with-dependencies.jar \ + "$@" diff --git a/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat b/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat new file mode 100644 index 00000000..41b3d976 --- /dev/null +++ b/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat @@ -0,0 +1,116 @@ +@REM +@REM This file is part of veraPDF Installer, a module of the veraPDF project. +@REM Copyright (c) 2015, veraPDF Consortium +@REM All rights reserved. +@REM +@REM veraPDF Installer is free software: you can redistribute it and/or modify +@REM it under the terms of either: +@REM +@REM The GNU General public license GPLv3+. +@REM You should have received a copy of the GNU General Public License +@REM along with veraPDF Installer as the LICENSE.GPL file in the root of the source +@REM tree. If not, see http://www.gnu.org/licenses/ or +@REM https://www.gnu.org/licenses/gpl-3.0.en.html. +@REM +@REM The Mozilla Public License MPLv2+. +@REM You should have received a copy of the Mozilla Public License along with +@REM veraPDF Installer as the LICENSE.MPL file in the root of the source tree. +@REM If a copy of the MPL was not distributed with this file, you can obtain one at +@REM http://mozilla.org/MPL/2.0/. +@REM + +@echo off + +set ERROR_CODE=0 + +:init +@REM Decide how to startup depending on the version of windows + +@REM -- Win98ME +if NOT "%OS%"=="Windows_NT" goto Win9xArg + +@REM set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" @setlocal + +@REM -- 4NT shell +if "%eval[2+2]" == "4" goto 4NTArgs + +@REM -- Regular WinNT shell +set CMD_LINE_ARGS=%* +goto WinNTGetScriptDir + +@REM The 4NT Shell from jp software +:4NTArgs +set CMD_LINE_ARGS=%$ +goto WinNTGetScriptDir + +:Win9xArg +@REM Slurp the command line arguments. This loop allows for an unlimited number +@REM of arguments (up to the command line limit, anyway). +set CMD_LINE_ARGS= +:Win9xApp +if %1a==a goto Win9xGetScriptDir +set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 +shift +goto Win9xApp + +:Win9xGetScriptDir +set SAVEDIR=%CD% +%0\ +cd %0\..\.. +set BASEDIR=%CD% +cd %SAVEDIR% +set SAVE_DIR= +goto repoSetup + +:WinNTGetScriptDir +set BASEDIR=%~dp0 +if %BASEDIR:~-1%==\ set BASEDIR=%BASEDIR:~0,-1% + +:repoSetup +set REPO= + + +if "%JAVACMD%"=="" set JAVACMD=java + +if "%REPO%"=="" set REPO=%BASEDIR%\bin + +set CLASSPATH="%BASEDIR%"\etc;"%REPO%"\* + +set ENDORSED_DIR= +if NOT "%ENDORSED_DIR%" == "" set CLASSPATH="%BASEDIR%"\%ENDORSED_DIR%\*;%CLASSPATH% + +if NOT "%CLASSPATH_PREFIX%" == "" set CLASSPATH=%CLASSPATH_PREFIX%;%CLASSPATH% + +@REM Reaching here means variables are defined and arguments have been captured +:endInit + +"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar target/odf-validator-${project.version}-jar-with-dependencies.jar %CMD_LINE_ARGS% +if %ERRORLEVEL% NEQ 0 goto error +goto end + +:error +if "%OS%"=="Windows_NT" @endlocal +set ERROR_CODE=%ERRORLEVEL% + +:end +@REM set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" goto endNT + +@REM For old DOS remove the set variables from ENV - we assume they were not set +@REM before we started - at least we don't leave any baggage around +set CMD_LINE_ARGS= +goto postExec + +:endNT +@REM If error code is set to 1 then the endlocal was done already in :error. +if %ERROR_CODE% EQU 0 @endlocal + + +:postExec + +if "%FORCE_EXIT_ON_ERROR%" == "on" ( + if %ERROR_CODE% NEQ 0 exit %ERROR_CODE% +) + +exit /B %ERROR_CODE% From 9b80d2f04c5a1f6bbf96edfce1c7ff3caf841355 Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 16:13:25 +0000 Subject: [PATCH 04/11] FIX: Use correct package path in batch file. --- .github/workflows/test-pr.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 54a7bbd9..8dace72b 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -31,6 +31,9 @@ jobs: - name: Test with Maven if: (matrix.java-version == 8) run: mvn --batch-mode verify -DjacocoAgg + - name: Package with Maven + if: (matrix.java-version == 8) + run: mvn --batch-mode package -DjacocoAgg - name: Test build package on Windows if: (matrix.os == 'windows-latest') run: ./odf-validator.bat --version From b6f85188fad601d4dcca82566a36bb34581adfae Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 16:16:33 +0000 Subject: [PATCH 05/11] FIX: Use correct Java version in build. --- .github/workflows/test-pr.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 8dace72b..3ad7b0aa 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -29,10 +29,9 @@ jobs: with: extra_args: --all-files --verbose - name: Test with Maven - if: (matrix.java-version == 8) + if: (matrix.java-version == 11) run: mvn --batch-mode verify -DjacocoAgg - name: Package with Maven - if: (matrix.java-version == 8) run: mvn --batch-mode package -DjacocoAgg - name: Test build package on Windows if: (matrix.os == 'windows-latest') From 961808bc47d6dc386bf23f3fd37693644ddb9539 Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 16:19:50 +0000 Subject: [PATCH 06/11] FIX: Try package and execute in same step. --- .github/workflows/test-pr.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 3ad7b0aa..245e5275 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -31,11 +31,9 @@ jobs: - name: Test with Maven if: (matrix.java-version == 11) run: mvn --batch-mode verify -DjacocoAgg - - name: Package with Maven - run: mvn --batch-mode package -DjacocoAgg - name: Test build package on Windows if: (matrix.os == 'windows-latest') - run: ./odf-validator.bat --version + run: mvn --batch-mode package -DjacocoAgg && ./odf-validator.bat --version - name: Test build package on Ubuntu if: (matrix.os == 'ubuntu-latest') - run: ./odf-validator --version + run: mvn --batch-mode package -DjacocoAgg && ./odf-validator --version From 28ccafa7aa4a9a261a41ef3fe61ab279911b4a58 Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 16:22:37 +0000 Subject: [PATCH 07/11] TEST: Check directory output. --- .github/workflows/test-pr.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 245e5275..2f166100 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -33,7 +33,7 @@ jobs: run: mvn --batch-mode verify -DjacocoAgg - name: Test build package on Windows if: (matrix.os == 'windows-latest') - run: mvn --batch-mode package -DjacocoAgg && ./odf-validator.bat --version + run: mvn --batch-mode package -DjacocoAgg && ls -alh ./target && ./odf-validator.bat --version - name: Test build package on Ubuntu if: (matrix.os == 'ubuntu-latest') - run: mvn --batch-mode package -DjacocoAgg && ./odf-validator --version + run: mvn --batch-mode package -DjacocoAgg && ls -alh ./target && ./odf-validator --version From 1d01121f405b159aaa13e5c2a216937bb89b357c Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 16:26:02 +0000 Subject: [PATCH 08/11] FIX: Batch file paths. --- .github/workflows/test-pr.yml | 4 ++-- .../resources/org/openpreservation/odf/batch/odf-validator | 2 +- .../org/openpreservation/odf/batch/odf-validator.bat | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 2f166100..e1b31495 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -33,7 +33,7 @@ jobs: run: mvn --batch-mode verify -DjacocoAgg - name: Test build package on Windows if: (matrix.os == 'windows-latest') - run: mvn --batch-mode package -DjacocoAgg && ls -alh ./target && ./odf-validator.bat --version + run: mvn --batch-mode package -DjacocoAgg && ls -alh ./odf-apps/target && ./odf-validator.bat --version - name: Test build package on Ubuntu if: (matrix.os == 'ubuntu-latest') - run: mvn --batch-mode package -DjacocoAgg && ls -alh ./target && ./odf-validator --version + run: mvn --batch-mode package -DjacocoAgg && ls -alh ./odf-apps/target && ./odf-validator --version diff --git a/src/main/resources/org/openpreservation/odf/batch/odf-validator b/src/main/resources/org/openpreservation/odf/batch/odf-validator index cb5cad00..427f2a83 100755 --- a/src/main/resources/org/openpreservation/odf/batch/odf-validator +++ b/src/main/resources/org/openpreservation/odf/batch/odf-validator @@ -78,5 +78,5 @@ fi exec "$JAVACMD" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions \ -Dapp.name="ODF Validator" \ - -jar target/odf-validator-${project.version}-jar-with-dependencies.jar \ + -jar odf-apps/target/odf-validator-${project.version}-jar-with-dependencies.jar \ "$@" diff --git a/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat b/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat index 41b3d976..041cefa2 100644 --- a/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat +++ b/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat @@ -85,7 +85,7 @@ if NOT "%CLASSPATH_PREFIX%" == "" set CLASSPATH=%CLASSPATH_PREFIX%;%CLASSPATH% @REM Reaching here means variables are defined and arguments have been captured :endInit -"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar target/odf-validator-${project.version}-jar-with-dependencies.jar %CMD_LINE_ARGS% +"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar odf-apps\target\odf-validator-${project.version}-jar-with-dependencies.jar %CMD_LINE_ARGS% if %ERRORLEVEL% NEQ 0 goto error goto end From 000948cb6226e2c16f78525571b65c390ac901d3 Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 16:28:48 +0000 Subject: [PATCH 09/11] FIX: Batch file paths. --- src/main/resources/org/openpreservation/odf/batch/odf-validator | 2 +- .../resources/org/openpreservation/odf/batch/odf-validator.bat | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/resources/org/openpreservation/odf/batch/odf-validator b/src/main/resources/org/openpreservation/odf/batch/odf-validator index 427f2a83..aceb3641 100755 --- a/src/main/resources/org/openpreservation/odf/batch/odf-validator +++ b/src/main/resources/org/openpreservation/odf/batch/odf-validator @@ -78,5 +78,5 @@ fi exec "$JAVACMD" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions \ -Dapp.name="ODF Validator" \ - -jar odf-apps/target/odf-validator-${project.version}-jar-with-dependencies.jar \ + -jar odf-apps/target/odf-apps-${project.version}-jar-with-dependencies.jar \ "$@" diff --git a/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat b/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat index 041cefa2..6ba72fd0 100644 --- a/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat +++ b/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat @@ -85,7 +85,7 @@ if NOT "%CLASSPATH_PREFIX%" == "" set CLASSPATH=%CLASSPATH_PREFIX%;%CLASSPATH% @REM Reaching here means variables are defined and arguments have been captured :endInit -"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar odf-apps\target\odf-validator-${project.version}-jar-with-dependencies.jar %CMD_LINE_ARGS% +"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar odf-apps\target\odf-apps-${project.version}-jar-with-dependencies.jar %CMD_LINE_ARGS% if %ERRORLEVEL% NEQ 0 goto error goto end From 3aa3db5c881299cc79c14690929b5536e28c0b27 Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 16:32:54 +0000 Subject: [PATCH 10/11] FIX: Windows batch file paths. --- .../resources/org/openpreservation/odf/batch/odf-validator.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat b/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat index 6ba72fd0..b2175c2b 100644 --- a/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat +++ b/src/main/resources/org/openpreservation/odf/batch/odf-validator.bat @@ -85,7 +85,7 @@ if NOT "%CLASSPATH_PREFIX%" == "" set CLASSPATH=%CLASSPATH_PREFIX%;%CLASSPATH% @REM Reaching here means variables are defined and arguments have been captured :endInit -"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar odf-apps\target\odf-apps-${project.version}-jar-with-dependencies.jar %CMD_LINE_ARGS% +"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar .\odf-apps\target\odf-apps-${project.version}-jar-with-dependencies.jar %CMD_LINE_ARGS% if %ERRORLEVEL% NEQ 0 goto error goto end From 7e0615309e92662ed6705bbb66a2823f8a95c81b Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Dec 2023 16:36:13 +0000 Subject: [PATCH 11/11] TEST: Remove test output. --- .github/workflows/test-pr.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index e1b31495..245e5275 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -33,7 +33,7 @@ jobs: run: mvn --batch-mode verify -DjacocoAgg - name: Test build package on Windows if: (matrix.os == 'windows-latest') - run: mvn --batch-mode package -DjacocoAgg && ls -alh ./odf-apps/target && ./odf-validator.bat --version + run: mvn --batch-mode package -DjacocoAgg && ./odf-validator.bat --version - name: Test build package on Ubuntu if: (matrix.os == 'ubuntu-latest') - run: mvn --batch-mode package -DjacocoAgg && ls -alh ./odf-apps/target && ./odf-validator --version + run: mvn --batch-mode package -DjacocoAgg && ./odf-validator --version