Skip to content

Commit 53a64ea

Browse files
authored
Merge pull request quarkusio#34240 from ia3andy/fix-exceptions
Fix create app exception min java version not thrown up
2 parents 6256208 + 8992255 commit 53a64ea

File tree

5 files changed

+14
-13
lines changed

5 files changed

+14
-13
lines changed

devtools/cli/src/main/java/io/quarkus/cli/CreateApp.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public Integer call() throws Exception {
101101
return CommandLine.ExitCode.SOFTWARE;
102102
} catch (Exception e) {
103103
return output.handleCommandException(e,
104-
"Unable to create project: " + e.getMessage());
104+
"Unable to create project: " + e.getLocalizedMessage());
105105
}
106106
}
107107

independent-projects/tools/codestarts/src/main/java/io/quarkus/devtools/codestarts/core/strategy/SmartPomMergeCodestartFileStrategyHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
import io.fabric8.maven.Maven;
1414
import io.fabric8.maven.merge.SmartModelMerger;
15-
import io.quarkus.devtools.codestarts.CodestartStructureException;
15+
import io.quarkus.devtools.codestarts.CodestartException;
1616
import io.quarkus.devtools.codestarts.core.CodestartData;
1717
import io.quarkus.devtools.codestarts.core.reader.TargetFile;
1818

@@ -32,7 +32,7 @@ public void process(Path targetDirectory, String relativePath, List<TargetFile>
3232
createDirectories(targetPath);
3333
CodestartData.getBuildtool(data)
3434
.filter(b -> Objects.equals(b, "maven"))
35-
.orElseThrow(() -> new CodestartStructureException(
35+
.orElseThrow(() -> new CodestartException(
3636
"something is wrong, smart-pom-merge file strategy must only be used on maven projects"));
3737

3838
final SmartModelMerger merger = new SmartModelMerger();

independent-projects/tools/devtools-common/src/main/java/io/quarkus/devtools/commands/handlers/CreateProjectCommandHandler.java

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -65,16 +65,11 @@ public QuarkusCommandOutcome execute(QuarkusCommandInvocation invocation) throws
6565

6666
List<Extension> extensionsToAdd = computeRequiredExtensions(invocation.getExtensionsCatalog(), extensionsQuery,
6767
invocation.log());
68-
final List<ExtensionCatalog> extensionOrigins;
6968
ExtensionCatalog mainCatalog = invocation.getExtensionsCatalog(); // legacy platform initialization
69+
7070
final String javaVersion = invocation.getStringValue(JAVA_VERSION);
71-
try {
72-
checkMinimumJavaVersion(javaVersion, extensionsToAdd);
73-
extensionOrigins = getExtensionOrigins(mainCatalog, extensionsToAdd);
74-
} catch (QuarkusCommandException e) {
75-
invocation.log().error(e.getLocalizedMessage());
76-
return QuarkusCommandOutcome.failure();
77-
}
71+
checkMinimumJavaVersion(javaVersion, extensionsToAdd);
72+
final List<ExtensionCatalog> extensionOrigins = getExtensionOrigins(mainCatalog, extensionsToAdd);
7873

7974
final List<ArtifactCoords> platformBoms = new ArrayList<>(Math.max(extensionOrigins.size(), 1));
8075
if (extensionOrigins.size() > 0) {

independent-projects/tools/devtools-testing/src/test/java/io/quarkus/devtools/project/create/ExtensionsAppearingInPlatformAndNonPlatformCatalogsTest.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package io.quarkus.devtools.project.create;
22

33
import static org.assertj.core.api.Assertions.assertThat;
4+
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
45

56
import java.nio.file.Path;
67
import java.util.ArrayList;
@@ -13,6 +14,7 @@
1314
import org.junit.jupiter.api.Test;
1415

1516
import io.quarkus.devtools.commands.CreateProject;
17+
import io.quarkus.devtools.commands.data.QuarkusCommandException;
1618
import io.quarkus.devtools.project.BuildTool;
1719
import io.quarkus.devtools.project.QuarkusProject;
1820
import io.quarkus.devtools.project.QuarkusProjectHelper;
@@ -222,7 +224,8 @@ public void addNonPlatformExtensionWithGA() throws Exception {
222224
@Test
223225
public void attemptCreateWithIncompatibleExtensions() throws Exception {
224226
final Path projectDir = newProjectDir("create-with-incompatible-extensions");
225-
assertThat(createProject(projectDir, Arrays.asList("acme-bar", "other-five-one")).isSuccess()).isFalse();
227+
assertThatExceptionOfType(QuarkusCommandException.class)
228+
.isThrownBy(() -> createProject(projectDir, Arrays.asList("acme-bar", "other-five-one")));
226229
}
227230

228231
@Test

independent-projects/tools/devtools-testing/src/test/java/io/quarkus/devtools/project/create/MavenProjectImportingMultipleBomsFromSinglePlatformTest.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package io.quarkus.devtools.project.create;
22

33
import static org.assertj.core.api.Assertions.assertThat;
4+
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
45

56
import java.nio.file.Path;
67
import java.util.ArrayList;
@@ -13,6 +14,7 @@
1314
import org.junit.jupiter.api.Test;
1415

1516
import io.quarkus.devtools.commands.CreateProject;
17+
import io.quarkus.devtools.commands.data.QuarkusCommandException;
1618
import io.quarkus.devtools.project.BuildTool;
1719
import io.quarkus.devtools.project.QuarkusProject;
1820
import io.quarkus.devtools.project.QuarkusProjectHelper;
@@ -200,7 +202,8 @@ public void addExtensionAndImportMemberBom() throws Exception {
200202
@Test
201203
public void attemptCreateWithIncompatibleExtensions() throws Exception {
202204
final Path projectDir = newProjectDir("create-with-incompatible-extensions");
203-
assertThat(createProject(projectDir, Arrays.asList("acme-bar", "other-five-one")).isSuccess()).isFalse();
205+
assertThatExceptionOfType(QuarkusCommandException.class)
206+
.isThrownBy(() -> createProject(projectDir, Arrays.asList("acme-bar", "other-five-one")));
204207
}
205208

206209
@Test

0 commit comments

Comments
 (0)