Repository: quarkusio/quarkus
Issue: After adding various extentsion, maven build fails

Had no problems running & compiling at the beginning, but after adding some extensions, the maven build failed.

```
$ ./mvnw clean compile quarkus:dev
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------< ai.labs:quarkus-test >------------------------
[INFO] Building quarkus-test 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ quarkus-test ---
[INFO] Deleting C:\\dev\\git\\quarkus-test\\target
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ quarkus-test ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ quarkus-test ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to C:\\dev\\git\\quarkus-test\\target\\classes
[INFO]
[INFO] --- quarkus-maven-plugin:0.18.0:dev (default-cli) @ quarkus-test ---
Listening for transport dt_socket at address: 5005
19:14:58,640 INFO  [io.qua.dep.QuarkusAugmentor] Beginning quarkus augmentation
19:14:58,842 INFO  [org.jbo.threads] JBoss Threads version 3.0.0.Beta4
19:15:00,488 INFO  [io.qua.dep.QuarkusAugmentor] Quarkus augmentation completed in 1848ms
19:15:00,517 ERROR [io.qua.dev.DevModeMain] Failed to start quarkus: java.lang.ExceptionInInitializerError
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.lang.Class.newInstance(Class.java:584)
        at io.quarkus.runner.RuntimeRunner.run(RuntimeRunner.java:117)
        at io.quarkus.dev.DevModeMain.doStart(DevModeMain.java:166)
        at io.quarkus.dev.DevModeMain.main(DevModeMain.java:88)
Caused by: java.lang.RuntimeException: Failed to start quarkus
        at io.quarkus.runner.ApplicationImpl1.<clinit>(ApplicationImpl1.zig:293)
        ... 8 more
Caused by: java.lang.RuntimeException: com.fasterxml.jackson.databind.exc.MismatchedInputException: No content to map due to end-of-input
 at [Source: UNKNOWN; line: 1, column: 0]
        at org.keycloak.adapters.KeycloakDeploymentBuilder.loadAdapterConfig(KeycloakDeploymentBuilder.java:198)
        at org.keycloak.adapters.KeycloakDeploymentBuilder.build(KeycloakDeploymentBuilder.java:187)
        at io.quarkus.keycloak.KeycloakTemplate.createKeycloakDeploymentContext(KeycloakTemplate.java:36)
        at io.quarkus.deployment.steps.KeycloakAdapterProcessor$configureAdapter4.deploy_0(KeycloakAdapterProcessor$configureAdapter4.zig:47)
        at io.quarkus.deployment.steps.KeycloakAdapterProcessor$configureAdapter4.deploy(KeycloakAdapterProcessor$configureAdapter4.zig:106)
        at io.quarkus.runner.ApplicationImpl1.<clinit>(ApplicationImpl1.zig:191)
        ... 8 more
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: No content to map due to end-of-input
 at [Source: UNKNOWN; line: 1, column: 0]
        at com.fasterxml.jackson.databind.exc.MismatchedInputException.from(MismatchedInputException.java:59)
        at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:4145)
        at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4000)
        at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3070)
        at org.keycloak.adapters.KeycloakDeploymentBuilder.loadAdapterConfig(KeycloakDeploymentBuilder.java:196)
        ... 13 more

19:15:00,522 ERROR [io.qua.dev.DevModeMain] Failed to start Quarkus, attempting to start hot replacement endpoint to recover
19:15:00,540 INFO  [org.xnio] XNIO version 3.7.2.Final
19:15:00,552 INFO  [org.xni.nio] XNIO NIO Implementation Version 3.7.2.Final

```
POM-file:
```
<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>ai.labs</groupId>
  <artifactId>quarkus-test</artifactId>
  <version>1.0-SNAPSHOT</version>
  <properties>
    <surefire-plugin.version>2.22.0</surefire-plugin.version>
    <maven.compiler.target>11</maven.compiler.target>
    <maven.compiler.source>11</maven.compiler.source>
    <quarkus.version>0.18.0</quarkus.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-bom</artifactId>
        <version>${quarkus.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-resteasy</artifactId>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-junit5</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>io.rest-assured</groupId>
      <artifactId>rest-assured</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-mailer</artifactId>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-smallrye-openapi</artifactId>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-scheduler</artifactId>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-keycloak</artifactId>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-maven-plugin</artifactId>
        <version>${quarkus.version}</version>
        <executions>
          <execution>
            <goals>
              <goal>build</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>${surefire-plugin.version}</version>
        <configuration>
          <systemProperties>
            <java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
          </systemProperties>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <profiles>
    <profile>
      <id>native</id>
      <activation>
        <property>
          <name>native</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>io.quarkus</groupId>
            <artifactId>quarkus-maven-plugin</artifactId>
            <version>${quarkus.version}</version>
            <executions>
              <execution>
                <goals>
                  <goal>native-image</goal>
                </goals>
                <configuration>
                  <enableHttpUrlHandler>true</enableHttpUrlHandler>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <artifactId>maven-failsafe-plugin</artifactId>
            <version>${surefire-plugin.version}</version>
            <executions>
              <execution>
                <goals>
                  <goal>integration-test</goal>
                  <goal>verify</goal>
                </goals>
                <configuration>
                  <systemProperties>
                    <native.image.path>${project.build.directory}/${project.build.finalName}-runner</native.image.path>
                  </systemProperties>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>

```

Here is the project:
[quarkus-test.zip](https://github.com/quarkusio/quarkus/files/3369499/quarkus-test.zip)



Changed files:
extensions/keycloak/runtime/src/main/java/io/quarkus/keycloak/KeycloakRecorder.java

diff --git a/extensions/keycloak/runtime/src/main/java/io/quarkus/keycloak/KeycloakRecorder.java b/extensions/keycloak/runtime/src/main/java/io/quarkus/keycloak/KeycloakRecorder.java
index c883ca2bb12..e0ec9e931b6 100644
--- a/extensions/keycloak/runtime/src/main/java/io/quarkus/keycloak/KeycloakRecorder.java
+++ b/extensions/keycloak/runtime/src/main/java/io/quarkus/keycloak/KeycloakRecorder.java
@@ -33,6 +33,11 @@ public QuarkusDeploymentContext createKeycloakDeploymentContext(AdapterConfig de
                 config = loadConfig(getClass().getClassLoader());
             }
 
+            if (config == null) {
+                throw new IllegalStateException(
+                        "Keycloak configuration not found, please refer to the Quarkus documentation to learn how to configure your application");
+            }
+
             deployment = KeycloakDeploymentBuilder.build(config);
         } else {
             deployment = KeycloakDeploymentBuilder.build(defaultConfig);