diff --git a/build.gradle b/build.gradle index 2981c2f..247b448 100644 --- a/build.gradle +++ b/build.gradle @@ -10,7 +10,7 @@ plugins { } group 'com.formkiq.gradle' -version '1.7.1' +version '1.7.2' spotless { java { diff --git a/src/main/java/com/formkiq/gradle/GraalvmParameterToStrings.java b/src/main/java/com/formkiq/gradle/GraalvmParameterToStrings.java index 0fc347b..8125020 100644 --- a/src/main/java/com/formkiq/gradle/GraalvmParameterToStrings.java +++ b/src/main/java/com/formkiq/gradle/GraalvmParameterToStrings.java @@ -14,7 +14,7 @@ public List apply(final GraalvmNativeExtension extension) { List args = new ArrayList<>(); if (extension.getBuildOptions() != null) { - String[] split = extension.getBuildOptions().split("-"); + String[] split = extension.getBuildOptions().split("\\s-|^-"); for (String s : split) { if (!s.isEmpty()) { args.add("-" + s.trim()); diff --git a/src/test/java/com/formkiq/gradle/GraalvmParameterToStringsTest.java b/src/test/java/com/formkiq/gradle/GraalvmParameterToStringsTest.java index 8142fd2..5ea47da 100644 --- a/src/test/java/com/formkiq/gradle/GraalvmParameterToStringsTest.java +++ b/src/test/java/com/formkiq/gradle/GraalvmParameterToStringsTest.java @@ -103,4 +103,21 @@ void testAllParametersSet() { assertEquals(expected, args, "When all properties are set, the resulting argument list must match exactly."); } + + @Test + void testMinusHparameters() { + // given + Project project = ProjectBuilder.builder().build(); + ObjectFactory objects = project.getObjects(); + GraalvmNativeExtension extension = new GraalvmNativeExtension(objects); + extension.setBuildOptions("-Os -H:-ReduceImplicitExceptionStackTraceInformation"); + + // when + List args = new GraalvmParameterToStrings().apply(extension); + + // then + List expected = List.of("-Os", "-H:-ReduceImplicitExceptionStackTraceInformation", + "--enable-http", "--enable-https"); + assertEquals(expected, args); + } }