{"id":19791880,"url":"https://github.com/making/vanilla-spring-webflux-fn-blank","last_synced_at":"2025-05-01T01:32:51.809Z","repository":{"id":49140004,"uuid":"114902685","full_name":"making/vanilla-spring-webflux-fn-blank","owner":"making","description":"Vanilla Spring WebFlux.fn Blank (Small Footpint Spring WebFlux.fn)","archived":false,"fork":false,"pushed_at":"2021-06-27T03:14:27.000Z","size":225,"stargazers_count":18,"open_issues_count":3,"forks_count":4,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2025-04-06T07:37:22.181Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/making.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-12-20T15:29:15.000Z","updated_at":"2024-12-09T19:53:20.000Z","dependencies_parsed_at":"2022-08-28T02:23:29.836Z","dependency_job_id":null,"html_url":"https://github.com/making/vanilla-spring-webflux-fn-blank","commit_stats":null,"previous_names":[],"tags_count":32,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/making%2Fvanilla-spring-webflux-fn-blank","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/making%2Fvanilla-spring-webflux-fn-blank/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/making%2Fvanilla-spring-webflux-fn-blank/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/making%2Fvanilla-spring-webflux-fn-blank/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/making","download_url":"https://codeload.github.com/making/vanilla-spring-webflux-fn-blank/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251808695,"owners_count":21647330,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T07:05:12.146Z","updated_at":"2025-05-01T01:32:51.521Z","avatar_url":"https://github.com/making.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vanilla Spring WebFlux.fn Blank\n\nMaven archetype to create a pre-configured maven project for Vanilla Spring WebFlux.fn Application.\n\nThis app uses neither Spring Boot nor DI container (!!).\n\nOnly [Router Function](https://docs.spring.io/spring-framework/docs/5.0.x/spring-framework-reference/web-reactive.html#webflux-fn) is used.\n\n## Create a blank project using maven archetype\n\n### How to use\n\n#### Use Spring 5.2.x\n\n```\nmvn archetype:generate\\\n -DarchetypeGroupId=am.ik.archetype\\\n -DarchetypeArtifactId=vanilla-spring-webflux-fn-blank-archetype\\\n -DarchetypeVersion=0.2.19\n```\n\nfor SNAPSHOT version\n\n```\nmvn -U org.apache.maven.plugins:maven-archetype-plugin:2.2:generate \\\n -DarchetypeRepository=https://oss.sonatype.org/content/repositories/snapshots \\\n -DarchetypeGroupId=am.ik.archetype\\\n -DarchetypeArtifactId=vanilla-spring-webflux-fn-blank-archetype\\\n -DarchetypeVersion=0.2.20-SNAPSHOT\n```\n\n#### Use Spring 5.1.x\n\n```\nmvn archetype:generate\\\n -DarchetypeGroupId=am.ik.archetype\\\n -DarchetypeArtifactId=vanilla-spring-webflux-fn-blank-archetype\\\n -DarchetypeVersion=0.1.4\n```\n\n### Example\n\n```\n$ mvn archetype:generate\\\n -DarchetypeGroupId=am.ik.archetype\\\n -DarchetypeArtifactId=vanilla-spring-webflux-fn-blank-archetype\\\n -DarchetypeVersion=0.2.19\\\n -DgroupId=com.example\\\n -DartifactId=demo-fluxfn\\\n -Dversion=1.0.0-SNAPSHOT\\\n -B\n\n[INFO] Scanning for projects...\n[INFO] \n[INFO] ------------------------------------------------------------------------\n[INFO] Building Maven Stub Project (No POM) 1\n[INFO] ------------------------------------------------------------------------\n[INFO] \n[INFO] \u003e\u003e\u003e maven-archetype-plugin:3.0.1:generate (default-cli) \u003e generate-sources @ standalone-pom \u003e\u003e\u003e\n[INFO] \n[INFO] \u003c\u003c\u003c maven-archetype-plugin:3.0.1:generate (default-cli) \u003c generate-sources @ standalone-pom \u003c\u003c\u003c\n[INFO] \n[INFO] \n[INFO] --- maven-archetype-plugin:3.0.1:generate (default-cli) @ standalone-pom ---\n[INFO] Generating project in Batch mode\n[INFO] Archetype repository not defined. Using the one from [am.ik.archetype:vanilla-spring-webflux-fn-blank-archetype:0.2.13] found in catalog remote\n[INFO] Downloading from central: https://repo.maven.apache.org/maven2/am/ik/archetype/vanilla-spring-webflux-fn-blank-archetype/0.2.15/vanilla-spring-webflux-fn-blank-archetype-0.2.15.pom\n[INFO] Downloaded from central: https://repo.maven.apache.org/maven2/am/ik/archetype/vanilla-spring-webflux-fn-blank-archetype/0.2.15/vanilla-spring-webflux-fn-blank-archetype-0.2.15.pom (2.7 kB at 6.4 kB/s)\n[INFO] Downloading from central: https://repo.maven.apache.org/maven2/am/ik/archetype/vanilla-spring-webflux-fn-blank-archetype/0.2.15/vanilla-spring-webflux-fn-blank-archetype-0.2.15.jar\n[INFO] Downloaded from central: https://repo.maven.apache.org/maven2/am/ik/archetype/vanilla-spring-webflux-fn-blank-archetype/0.2.15/vanilla-spring-webflux-fn-blank-archetype-0.2.15.jar (55 kB at 128 kB/s)\n[INFO] ----------------------------------------------------------------------------\n[INFO] Using following parameters for creating project from Archetype: vanilla-spring-webflux-fn-blank-archetype:0.2.15\n[INFO] ----------------------------------------------------------------------------\n[INFO] Parameter: groupId, Value: com.example\n[INFO] Parameter: artifactId, Value: demo-fluxfn\n[INFO] Parameter: version, Value: 1.0.0-SNAPSHOT\n[INFO] Parameter: package, Value: com.example\n[INFO] Parameter: packageInPathFormat, Value: com/example\n[INFO] Parameter: package, Value: com.example\n[INFO] Parameter: version, Value: 1.0.0-SNAPSHOT\n[INFO] Parameter: groupId, Value: com.example\n[INFO] Parameter: artifactId, Value: demo-fluxfn\n[WARNING] CP Don't override file /private/tmp/demo-fluxfn/src/main/resources/META-INF/native-image/com.example/demo-fluxfn/native-image.properties\n[WARNING] CP Don't override file /private/tmp/demo-fluxfn/src/main/resources/META-INF/native-image/com.example/demo-fluxfn/reflect-config.json\n[WARNING] CP Don't override file /private/tmp/demo-fluxfn/src/main/resources/META-INF/native-image/com.example/demo-fluxfn/resource-config.json\n[WARNING] CP Don't override file /private/tmp/demo-fluxfn/src/main/resources/logback.xml\n[INFO] Project created from Archetype in dir: /private/tmp/demo-fluxfn\n[INFO] ------------------------------------------------------------------------\n[INFO] BUILD SUCCESS\n[INFO] ------------------------------------------------------------------------\n[INFO] Total time: 5.287 s\n[INFO] Finished at: 2019-09-13T13:46:43+09:00\n[INFO] Final Memory: 15M/222M\n[INFO] ------------------------------------------------------------------------\n\n$ tree demo-fluxfn -a\ndemo-fluxfn\n├── .mvn\n│   └── wrapper\n│       ├── maven-wrapper.jar\n│       └── maven-wrapper.properties\n├── mvnw\n├── mvnw.cmd\n├── pom.xml\n└── src\n    ├── main\n    │   ├── java\n    │   │   └── com\n    │   │       └── example\n    │   │           ├── App.java\n    │   │           ├── HelloHandler.java\n    │   │           ├── Message.java\n    │   │           └── MessageHandler.java\n    │   └── resources\n    │       ├── META-INF\n    │       │   └── native-image\n    │       │       └── com.example\n    │       │           └── demo-fluxfn\n    │       │               ├── native-image.properties\n    │       │               ├── reflect-config.json\n    │       │               └── resource-config.json\n    │       └── logback.xml\n    └── test\n        ├── java\n        │   └── com\n        │       └── example\n        │           ├── HelloHandlerTest.java\n        │           └── MessageHandlerTest.java\n        └── resources\n            └── junit-platform.properties\n\n17 directories, 16 files\n```\n\n\n\n```\n$ cd demo-fluxfn\n$ chmod +x mvnw*\n$ ./mvnw clean package\n$ java -jar target/demo-fluxfn-1.0.0-SNAPSHOT.jar \n2019-09-13 13:48:44.989  INFO --- [           main] com.example.App                          : Started in 0.674 seconds\n```\n\n```\n$ curl localhost:8080\nHello World!\n```\n\nFollowing libraries will be included:\n\n```\n$ mvn dependency:list | grep ':compile' | sort\n[INFO]    am.ik.yavi:yavi:jar:0.2.3:compile\n[INFO]    ch.qos.logback:logback-classic:jar:1.2.3:compile\n[INFO]    ch.qos.logback:logback-core:jar:1.2.3:compile\n[INFO]    com.fasterxml.jackson.core:jackson-annotations:jar:2.9.0:compile\n[INFO]    com.fasterxml.jackson.core:jackson-core:jar:2.9.9:compile\n[INFO]    com.fasterxml.jackson.core:jackson-databind:jar:2.9.9.3:compile\n[INFO]    com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.9.9:compile\n[INFO]    io.netty:netty-buffer:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-codec-http2:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-codec-http:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-codec-socks:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-codec:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-common:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-handler-proxy:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-handler:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-resolver:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-transport-native-epoll:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-transport-native-unix-common:jar:4.1.39.Final:compile\n[INFO]    io.netty:netty-transport:jar:4.1.39.Final:compile\n[INFO]    io.projectreactor.addons:reactor-pool:jar:0.1.0.RC1:compile\n[INFO]    io.projectreactor.netty:reactor-netty:jar:0.9.0.RC1:compile\n[INFO]    io.projectreactor:reactor-core:jar:3.3.0.RC1:compile\n[INFO]    org.reactivestreams:reactive-streams:jar:1.0.3:compile\n[INFO]    org.slf4j:slf4j-api:jar:1.7.28:compile\n[INFO]    org.springframework:spring-aop:jar:5.2.0.RC2:compile\n[INFO]    org.springframework:spring-beans:jar:5.2.0.RC2:compile\n[INFO]    org.springframework:spring-context:jar:5.2.0.RC2:compile\n[INFO]    org.springframework:spring-core:jar:5.2.0.RC2:compile\n[INFO]    org.springframework:spring-expression:jar:5.2.0.RC2:compile\n[INFO]    org.springframework:spring-jcl:jar:5.2.0.RC2:compile\n[INFO]    org.springframework:spring-test:jar:5.2.0.RC2:compile\n[INFO]    org.springframework:spring-web:jar:5.2.0.RC2:compile\n[INFO]    org.springframework:spring-webflux:jar:5.2.0.RC2:compile\n```\n\nConfigure memory size as below:\n\n```\nJAVA_OPTS=\"-Xmx16M -Xss1M -XX:MaxMetaspaceSize=32M -XX:ReservedCodeCacheSize=32M -XX:CompressedClassSpaceSize=8M -XX:MaxDirectMemorySize=8M\"\njava $JAVA_OPTS -jar target/demo-fluxfn-1.0.0-SNAPSHOT.jar\n```\n\nThis will actually run.\n\n### Deploy to Cloud Foundry\n\nTo make best use of small footprint, you can configure [Java Memory Calculator](https://github.com/cloudfoundry/java-buildpack-memory-calculator)\n\nHere is a example of `manifest.yml` that uses only 112Mb memory:\n\n``` yml\napplications:\n- name: fluxfn\n  buildpack: java_buildpack\n  memory: 112M\n  path: target/demo-fluxfn-1.0.0-SNAPSHOT.jar \n  env:\n    JAVA_OPTS: '-XX:MaxMetaspaceSize=32M -XX:ReservedCodeCacheSize=32M -XX:CompressedClassSpaceSize=8M -XX:MaxDirectMemorySize=8M'\n    JBP_CONFIG_OPEN_JDK_JRE: '[memory_calculator: {stack_threads: 16}]'\n```\n\nBe careful that this configuration is well tuned for a tiny \"Hello World\" application.\n\n\n```\n$ ./mvnw clean package\n$ java -jar target/demo-fluxfn-1.0.0-SNAPSHOT.jar\n$ cf push\n  Using manifest file /private/tmp/demo-fluxfn/demo-fluxfn/manifest.yml\n  \n  Updating app fluxfn in org myorg / space development as maki@example.com...\n  OK\n  \n  Uploading fluxfn...\n  Uploading app files from: /var/folders/15/fww24j3d7pg9sz196cxv_6xm4nvlh8/T/unzipped-app921204986\n  Uploading 214.5K, 78 files\n  Done uploading               \n  OK\n  \n  Starting app fluxfn in org myorg / space development as maki@example.com...\n  Downloading java_buildpack...\n  Downloaded java_buildpack\n  Creating container\n  Successfully created container\n  Downloading app package...\n  Downloaded app package (10.7M)\n  -----\u003e Java Buildpack v4.5 (offline) | https://github.com/cloudfoundry/java-buildpack.git#ffeefb9\n  -----\u003e Downloading Jvmkill Agent 1.10.0_RELEASE from https://java-buildpack.cloudfoundry.org/jvmkill/trusty/x86_64/jvmkill-1.10.0_RELEASE.so (found in cache)\n  -----\u003e Downloading Open Jdk JRE 1.8.0_141 from https://java-buildpack.cloudfoundry.org/openjdk/trusty/x86_64/openjdk-1.8.0_141.tar.gz (found in cache)\n         Expanding Open Jdk JRE to .java-buildpack/open_jdk_jre (1.6s)\n  -----\u003e Downloading Open JDK Like Memory Calculator 3.9.0_RELEASE from https://java-buildpack.cloudfoundry.org/memory-calculator/trusty/x86_64/memory-calculator-3.9.0_RELEASE.tar.gz (found in cache)\n         Loaded Classes: 12505, Threads: 16\n  -----\u003e Downloading Client Certificate Mapper 1.2.0_RELEASE from https://java-buildpack.cloudfoundry.org/client-certificate-mapper/client-certificate-mapper-1.2.0_RELEASE.jar (found in cache)\n  -----\u003e Downloading Container Security Provider 1.8.0_RELEASE from https://java-buildpack.cloudfoundry.org/container-security-provider/container-security-provider-1.8.0_RELEASE.jar (found in cache)\n  -----\u003e Downloading Spring Auto Reconfiguration 1.12.0_RELEASE from https://java-buildpack.cloudfoundry.org/auto-reconfiguration/auto-reconfiguration-1.12.0_RELEASE.jar (found in cache)\n  Exit status 0\n  Uploading droplet, build artifacts cache...\n  Uploading build artifacts cache...\n  Uploading droplet...\n  Uploaded build artifacts cache (129B)\n  Uploaded droplet (57.1M)\n  Uploading complete\n  Stopping instance bce0ba8a-c5e3-4554-b893-e545801da7a8\n  Destroying container\n  Successfully destroyed container\n  \n  1 of 1 instances running\n  \n  App started\n  \n  \n  OK\n  \n  App fluxfn was started using this command `JAVA_OPTS=\"-agentpath:$PWD/.java-buildpack/open_jdk_jre/bin/jvmkill-1.10.0_RELEASE=printHeapHistogram=1 -Djava.io.tmpdir=$TMPDIR -Djava.ext.dirs=$PWD/.java-buildpack/container_security_provider:$PWD/.java-buildpack/open_jdk_jre/lib/ext -Djava.security.properties=$PWD/.java-buildpack/security_providers/java.security $JAVA_OPTS\" \u0026\u0026 CALCULATED_MEMORY=$($PWD/.java-buildpack/open_jdk_jre/bin/java-buildpack-memory-calculator-3.9.0_RELEASE -totMemory=$MEMORY_LIMIT -stackThreads=16 -loadedClasses=13214 -poolType=metaspace -vmOptions=\"$JAVA_OPTS\") \u0026\u0026 echo JVM Memory Configuration: $CALCULATED_MEMORY \u0026\u0026 JAVA_OPTS=\"$JAVA_OPTS $CALCULATED_MEMORY\" \u0026\u0026 SERVER_PORT=$PORT eval exec $PWD/.java-buildpack/open_jdk_jre/bin/java $JAVA_OPTS -cp $PWD/. org.springframework.boot.loader.JarLauncher`\n  \n  Showing health and status for app fluxfn in org myorg / space development as maki@example.com...\n  OK\n  \n  requested state: started\n  instances: 1/1\n  usage: 112M x 1 instances\n  urls: fluxfn.cfapps.io\n  last uploaded: Thu Dec 21 12:05:41 UTC 2017\n  stack: cflinuxfs2\n  buildpack: java_buildpack\n  \n       state     since                    cpu    memory          disk           details\n  #0   running   2017-12-21 09:06:27 PM   0.3%   95.1M of 112M   135.7M of 1G\n```\n\n\n### How to use `ApplicationContext`\n\n``` diff\ndiff --git a/src/main/java/com/example/App.java b/src/main/java/com/example/App.java\nindex 784b593..2f16b86 100644\n--- a/src/main/java/com/example/App.java\n+++ b/src/main/java/com/example/App.java\n@@ -6,12 +6,14 @@ import java.util.Optional;\n import org.slf4j.LoggerFactory;\n import reactor.netty.http.server.HttpServer;\n \n+import org.springframework.context.support.GenericApplicationContext;\n import org.springframework.http.server.reactive.HttpHandler;\n import org.springframework.http.server.reactive.ReactorHttpHandlerAdapter;\n-import org.springframework.web.reactive.function.server.HandlerStrategies;\n import org.springframework.web.reactive.function.server.RouterFunction;\n import org.springframework.web.reactive.function.server.RouterFunctions;\n import org.springframework.web.reactive.function.server.ServerResponse;\n+import org.springframework.web.server.WebHandler;\n+import org.springframework.web.server.adapter.WebHttpHandlerBuilder;\n \n public class App {\n \n@@ -21,8 +23,13 @@ public class App {\n \t\t\t\t.map(Integer::parseInt) //\n \t\t\t\t.orElse(8080);\n \n-\t\tHttpHandler httpHandler = RouterFunctions.toHttpHandler(App.routes(),\n-\t\t\t\tHandlerStrategies.builder().build());\n+\t\tGenericApplicationContext context = new GenericApplicationContext();\n+\t\tcontext.registerBean(\"webHandler\", WebHandler.class,\n+\t\t\t\t() -\u003e RouterFunctions.toWebHandler(App.routes()));\n+\t\tcontext.refresh();\n+\t\tcontext.registerShutdownHook();\n+\t\tHttpHandler httpHandler = WebHttpHandlerBuilder.applicationContext(context)\n+\t\t\t\t.build();\n \t\tHttpServer httpServer = HttpServer.create().host(\"0.0.0.0\").port(port)\n \t\t\t\t.handle(new ReactorHttpHandlerAdapter(httpHandler));\n \t\thttpServer.bindUntilJavaShutdown(Duration.ofSeconds(3), disposableServer -\u003e {\n```\n\nSee also [Functional Spring Cookbook](https://github.com/making/functional-spring-cookbook)\n\n### GraalVM support\n\n0.2.x supports [GraalVM](https://www.graalvm.org) build.\n\nTested with 19.2.0.\n\n```\n$ mvn archetype:generate\\\n -DarchetypeGroupId=am.ik.archetype\\\n -DarchetypeArtifactId=vanilla-spring-webflux-fn-blank-archetype\\\n -DarchetypeVersion=0.2.15\\\n -DgroupId=com.example\\\n -DartifactId=demo-fluxfn\\\n -Dversion=1.0.0-SNAPSHOT\\\n -B\n```\n\nInstall [GraalVM](https://www.graalvm.org/downloads/) and configure\n\n```\nexport JAVA_HOME=/path-to-graalvm\nexport PATH=$PATH:$JAVA_HOME/bin\n```\n\nIf you are using SDKMAN, try \n\n```\nsdk install java 19.2.0-grl\nsdk use java 19.2.0-grl\n```\n\n```\n$ cd demo-fluxfn\n$ chmod +x mvnw*\n$ ./mvnw clean package -DskipTests=true -Pgraal\n[INFO] Scanning for projects...\n[INFO] \n[INFO] ----------------------\u003c com.example:demo-fluxfn \u003e-----------------------\n[INFO] Building demo-fluxfn 1.0.0-SNAPSHOT\n[INFO] --------------------------------[ jar ]---------------------------------\n[INFO] \n[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ demo-fluxfn ---\n[INFO] Deleting /private/tmp/demo-fluxfn/target\n[INFO] \n[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ demo-fluxfn ---\n[INFO] Using 'UTF-8' encoding to copy filtered resources.\n[INFO] Copying 4 resources\n[INFO] \n[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ demo-fluxfn ---\n[INFO] Changes detected - recompiling the module!\n[INFO] Compiling 4 source files to /private/tmp/demo-fluxfn/target/classes\n[INFO] \n[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ demo-fluxfn ---\n[INFO] Using 'UTF-8' encoding to copy filtered resources.\n[INFO] Copying 1 resource\n[INFO] \n[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ demo-fluxfn ---\n[INFO] Changes detected - recompiling the module!\n[INFO] Compiling 2 source files to /private/tmp/demo-fluxfn/target/test-classes\n[INFO] \n[INFO] --- maven-surefire-plugin:2.22.0:test (default-test) @ demo-fluxfn ---\n[INFO] Tests are skipped.\n[INFO] \n[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ demo-fluxfn ---\n[INFO] Building jar: /private/tmp/demo-fluxfn/target/demo-fluxfn-1.0.0-SNAPSHOT.jar\n[INFO] \n[INFO] --- native-image-maven-plugin:19.2.0:native-image (default) @ demo-fluxfn ---\n[INFO] ImageClasspath Entry: org.springframework:spring-context:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-context/5.2.0.RC2/spring-context-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: org.springframework:spring-aop:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-aop/5.2.0.RC2/spring-aop-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: org.springframework:spring-beans:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-beans/5.2.0.RC2/spring-beans-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: org.springframework:spring-core:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-core/5.2.0.RC2/spring-core-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: org.springframework:spring-jcl:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-jcl/5.2.0.RC2/spring-jcl-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: org.springframework:spring-expression:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-expression/5.2.0.RC2/spring-expression-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: org.springframework:spring-webflux:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-webflux/5.2.0.RC2/spring-webflux-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: org.springframework:spring-web:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-web/5.2.0.RC2/spring-web-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: io.projectreactor:reactor-core:jar:3.3.0.RC1:compile (file:///Users/maki/.m2/repository/io/projectreactor/reactor-core/3.3.0.RC1/reactor-core-3.3.0.RC1.jar)\n[INFO] ImageClasspath Entry: org.reactivestreams:reactive-streams:jar:1.0.3:compile (file:///Users/maki/.m2/repository/org/reactivestreams/reactive-streams/1.0.3/reactive-streams-1.0.3.jar)\n[INFO] ImageClasspath Entry: ch.qos.logback:logback-classic:jar:1.2.3:compile (file:///Users/maki/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar)\n[INFO] ImageClasspath Entry: ch.qos.logback:logback-core:jar:1.2.3:compile (file:///Users/maki/.m2/repository/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar)\n[INFO] ImageClasspath Entry: org.slf4j:slf4j-api:jar:1.7.28:compile (file:///Users/maki/.m2/repository/org/slf4j/slf4j-api/1.7.28/slf4j-api-1.7.28.jar)\n[INFO] ImageClasspath Entry: io.projectreactor.netty:reactor-netty:jar:0.9.0.RC1:compile (file:///Users/maki/.m2/repository/io/projectreactor/netty/reactor-netty/0.9.0.RC1/reactor-netty-0.9.0.RC1.jar)\n[INFO] ImageClasspath Entry: io.netty:netty-codec-http:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-codec-http/4.1.39.Final/netty-codec-http-4.1.39.Final.jar)\n[WARNING] jar:file:///Users/maki/.m2/repository/io/netty/netty-codec-http/4.1.39.Final/netty-codec-http-4.1.39.Final.jar!/META-INF/native-image/io.netty/codec-http/native-image.properties does not match recommended META-INF/native-image/${groupId}/${artifactId}/native-image.properties layout.\n[INFO] ImageClasspath Entry: io.netty:netty-common:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-common/4.1.39.Final/netty-common-4.1.39.Final.jar)\n[INFO] ImageClasspath Entry: io.netty:netty-buffer:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-buffer/4.1.39.Final/netty-buffer-4.1.39.Final.jar)\n[INFO] ImageClasspath Entry: io.netty:netty-transport:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-transport/4.1.39.Final/netty-transport-4.1.39.Final.jar)\n[WARNING] jar:file:///Users/maki/.m2/repository/io/netty/netty-transport/4.1.39.Final/netty-transport-4.1.39.Final.jar!/META-INF/native-image/io.netty/transport/native-image.properties does not match recommended META-INF/native-image/${groupId}/${artifactId}/native-image.properties layout.\n[INFO] ImageClasspath Entry: io.netty:netty-resolver:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-resolver/4.1.39.Final/netty-resolver-4.1.39.Final.jar)\n[INFO] ImageClasspath Entry: io.netty:netty-codec:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-codec/4.1.39.Final/netty-codec-4.1.39.Final.jar)\n[INFO] ImageClasspath Entry: io.netty:netty-handler:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-handler/4.1.39.Final/netty-handler-4.1.39.Final.jar)\n[INFO] ImageClasspath Entry: io.netty:netty-handler-proxy:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-handler-proxy/4.1.39.Final/netty-handler-proxy-4.1.39.Final.jar)\n[INFO] ImageClasspath Entry: io.netty:netty-codec-socks:jar:4.1.39.Final:compile (file:///Users/maki/.m2/repository/io/netty/netty-codec-socks/4.1.39.Final/netty-codec-socks-4.1.39.Final.jar)\n[INFO] ImageClasspath Entry: io.projectreactor.addons:reactor-pool:jar:0.1.0.RC1:compile (file:///Users/maki/.m2/repository/io/projectreactor/addons/reactor-pool/0.1.0.RC1/reactor-pool-0.1.0.RC1.jar)\n[INFO] ImageClasspath Entry: com.fasterxml.jackson.core:jackson-databind:jar:2.9.9.3:compile (file:///Users/maki/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.9.9.3/jackson-databind-2.9.9.3.jar)\n[INFO] ImageClasspath Entry: com.fasterxml.jackson.core:jackson-annotations:jar:2.9.0:compile (file:///Users/maki/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.9.0/jackson-annotations-2.9.0.jar)\n[INFO] ImageClasspath Entry: com.fasterxml.jackson.core:jackson-core:jar:2.9.9:compile (file:///Users/maki/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.9.9/jackson-core-2.9.9.jar)\n[INFO] ImageClasspath Entry: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.9.9:compile (file:///Users/maki/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.9.9/jackson-datatype-jsr310-2.9.9.jar)\n[INFO] ImageClasspath Entry: am.ik.yavi:yavi:jar:0.2.3:compile (file:///Users/maki/.m2/repository/am/ik/yavi/yavi/0.2.3/yavi-0.2.3.jar)\n[INFO] ImageClasspath Entry: org.springframework:spring-test:jar:5.2.0.RC2:compile (file:///Users/maki/.m2/repository/org/springframework/spring-test/5.2.0.RC2/spring-test-5.2.0.RC2.jar)\n[INFO] ImageClasspath Entry: com.github.spring-projects-experimental:spring-graal-feature:jar:0.5.0.RELEASE:compile (file:///Users/maki/.m2/repository/com/github/spring-projects-experimental/spring-graal-feature/0.5.0.RELEASE/spring-graal-feature-0.5.0.RELEASE.jar)\n[INFO] ImageClasspath Entry: com.example:demo-fluxfn:jar:1.0.0-SNAPSHOT (file:///private/tmp/demo-fluxfn/target/demo-fluxfn-1.0.0-SNAPSHOT.jar)\n[INFO] Executing: /Users/maki/.sdkman/candidates/java/19.2.0-grl/jre/bin/native-image -cp /Users/maki/.m2/repository/org/springframework/spring-context/5.2.0.RC2/spring-context-5.2.0.RC2.jar:/Users/maki/.m2/repository/org/springframework/spring-aop/5.2.0.RC2/spring-aop-5.2.0.RC2.jar:/Users/maki/.m2/repository/org/springframework/spring-beans/5.2.0.RC2/spring-beans-5.2.0.RC2.jar:/Users/maki/.m2/repository/org/springframework/spring-core/5.2.0.RC2/spring-core-5.2.0.RC2.jar:/Users/maki/.m2/repository/org/springframework/spring-jcl/5.2.0.RC2/spring-jcl-5.2.0.RC2.jar:/Users/maki/.m2/repository/org/springframework/spring-expression/5.2.0.RC2/spring-expression-5.2.0.RC2.jar:/Users/maki/.m2/repository/org/springframework/spring-webflux/5.2.0.RC2/spring-webflux-5.2.0.RC2.jar:/Users/maki/.m2/repository/org/springframework/spring-web/5.2.0.RC2/spring-web-5.2.0.RC2.jar:/Users/maki/.m2/repository/io/projectreactor/reactor-core/3.3.0.RC1/reactor-core-3.3.0.RC1.jar:/Users/maki/.m2/repository/org/reactivestreams/reactive-streams/1.0.3/reactive-streams-1.0.3.jar:/Users/maki/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar:/Users/maki/.m2/repository/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar:/Users/maki/.m2/repository/org/slf4j/slf4j-api/1.7.28/slf4j-api-1.7.28.jar:/Users/maki/.m2/repository/io/projectreactor/netty/reactor-netty/0.9.0.RC1/reactor-netty-0.9.0.RC1.jar:/Users/maki/.m2/repository/io/netty/netty-codec-http/4.1.39.Final/netty-codec-http-4.1.39.Final.jar:/Users/maki/.m2/repository/io/netty/netty-common/4.1.39.Final/netty-common-4.1.39.Final.jar:/Users/maki/.m2/repository/io/netty/netty-buffer/4.1.39.Final/netty-buffer-4.1.39.Final.jar:/Users/maki/.m2/repository/io/netty/netty-transport/4.1.39.Final/netty-transport-4.1.39.Final.jar:/Users/maki/.m2/repository/io/netty/netty-resolver/4.1.39.Final/netty-resolver-4.1.39.Final.jar:/Users/maki/.m2/repository/io/netty/netty-codec/4.1.39.Final/netty-codec-4.1.39.Final.jar:/Users/maki/.m2/repository/io/netty/netty-handler/4.1.39.Final/netty-handler-4.1.39.Final.jar:/Users/maki/.m2/repository/io/netty/netty-handler-proxy/4.1.39.Final/netty-handler-proxy-4.1.39.Final.jar:/Users/maki/.m2/repository/io/netty/netty-codec-socks/4.1.39.Final/netty-codec-socks-4.1.39.Final.jar:/Users/maki/.m2/repository/io/projectreactor/addons/reactor-pool/0.1.0.RC1/reactor-pool-0.1.0.RC1.jar:/Users/maki/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.9.9.3/jackson-databind-2.9.9.3.jar:/Users/maki/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.9.0/jackson-annotations-2.9.0.jar:/Users/maki/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.9.9/jackson-core-2.9.9.jar:/Users/maki/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.9.9/jackson-datatype-jsr310-2.9.9.jar:/Users/maki/.m2/repository/am/ik/yavi/yavi/0.2.3/yavi-0.2.3.jar:/Users/maki/.m2/repository/org/springframework/spring-test/5.2.0.RC2/spring-test-5.2.0.RC2.jar:/Users/maki/.m2/repository/com/github/spring-projects-experimental/spring-graal-feature/0.5.0.RELEASE/spring-graal-feature-0.5.0.RELEASE.jar:/private/tmp/demo-fluxfn/target/demo-fluxfn-1.0.0-SNAPSHOT.jar -H:Class=com.example.App -H:Name=demo-fluxfn\nShutdown Server(pid: 43634, port: 54756)\nBuild on Server(pid: 68781, port: 56089)*\n[demo-fluxfn:68781]    classlist:   4,504.25 ms\n ____             _               _____          _                  \n/ ___| _ __  _ __(_)_ __   __ _  |  ___|__  __ _| |_ _   _ _ __ ___ \n\\___ \\| '_ \\| '__| | '_ \\ / _` | | |_ / _ \\/ _` | __| | | | '__/ _ \\\n ___) | |_) | |  | | | | | (_| | |  _|  __/ (_| | |_| |_| | | |  __/\n|____/| .__/|_|  |_|_| |_|\\__, | |_|  \\___|\\__,_|\\__|\\__,_|_|  \\___|\n      |_|                 |___/                                     \n\nRemove unused config = true\n[demo-fluxfn:68781]        (cap):   1,587.25 ms\nDUPLICATE: com.sun.xml.internal.stream.events.XMLEventFactoryImpl\nDUPLICATE: org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication$Type\nDUPLICATE: org.springframework.context.annotation.Configuration\nDUPLICATE: org.springframework.boot.autoconfigure.AutoConfigurationPackage\nDUPLICATE: java.util.EventListener\nDUPLICATE: java.lang.Class\nSBG: reflection registering #321 entries\nSBG: WARNING: /reflect.json included com.google.protobuf.ExtensionRegistry but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorBuilderImpl but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.annotations.common.Version but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.AutoFlushEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.condition.OnResourceCondition but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.ClearEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.DeleteEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.DirtyCheckEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.EvictEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.FlushEntityEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.FlushEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.InitializeCollectionEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.LoadEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.LockEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.MergeEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PersistEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PostCollectionRecreateEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PostCollectionRemoveEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PostCollectionUpdateEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PostDeleteEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PostInsertEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PostLoadEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PostUpdateEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PreCollectionRecreateEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PreCollectionRemoveEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PreCollectionUpdateEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PreDeleteEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PreInsertEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PreLoadEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.PreUpdateEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.RefreshEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.ReplicateEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.ResolveNaturalIdEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.SaveOrUpdateEventListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.event.spi.EventType but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.dialect.H2Dialect but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.jboss.logging.BasicLogger but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.annotations.common.util.impl.Log_$logger but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.annotations.common.util.impl.Log but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included com.google.gson.GsonBuilder but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.aop.aspectj.AspectJAwareAdvisorAutoProxyCreator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included javax.persistence.EntityManagerFactory but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.jpa.HibernateEntityManagerFactory but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.HibernateValidatorConfiguration but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.SpringBootVersion but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included javax.validation.spi.ConfigurationState but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included javax.validation.Configuration but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.validation.beanvalidation.LocalValidatorFactoryBean but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.web.reactive.ReactiveWebServerFactory but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.web.server.WebServerFactoryCustomizerBeanPostProcessor but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.web.embedded.netty.NettyReactiveWebServerFactory but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.web.client.RestTemplateBuilder but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.properties.ConfigurationPropertiesBinder but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.condition.SearchStrategy but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.logging.java.JavaLoggingSystem but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurationImportSelector but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication$Type but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication$Type but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigureOrder but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included com.fasterxml.jackson.dataformat.smile.SmileFactory but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included com.google.protobuf.Message but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.condition.ConditionalOnResource but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.validation.beanvalidation.OptionalValidatorFactoryBean but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included javax.validation.Validator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurationImportSelector$AutoConfigurationGroup but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.properties.ConfigurationProperties but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.TypeExcludeFilter but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigureAfter but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.cache.CacheCondition but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.CommandLineRunner but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.SpringBootConfiguration but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.SpringBootApplication but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.EnableAutoConfiguration but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurationPackage but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.properties.ConfigurationPropertiesBindingPostProcessorRegistrar but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.properties.ConfigurationPropertiesBindingPostProcessor but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.task.TaskExecutorBuilder but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.properties.EnableConfigurationProperties but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.SpringApplication but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.admin.SpringApplicationAdminMXBeanRegistrar but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.cache.EhCacheCacheConfiguration$ConfigAvailableCondition but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.thymeleaf.spring5.view.reactive.ThymeleafReactiveView but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.thymeleaf.spring5.expression.Mvc$NonSpring41MvcUriComponentsBuilderDelegate but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.thymeleaf.standard.expression.AdditionExpression but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.jdbc.support.SQLErrorCodes but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.transaction.TransactionDefinition but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.transaction.annotation.Propagation but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.transaction.annotation.Transactional but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.jmx.ParentAwareNamingStrategy but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.cache.JCacheCacheConfiguration$JCacheAvailableCondition but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.task.TaskSchedulerBuilder but it doesn't exist on the classpath, skipping...\nSBG: ERROR: problem handling flag: allDeclaredMethods for org.springframework.validation.beanvalidation.MethodValidationPostProcessor because of missing javax/validation/Validator\nSBG: WARNING: /reflect.json included org.springframework.boot.web.reactive.context.AnnotationConfigReactiveWebServerApplicationContext but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurationPackages$BasePackages but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.http.HttpMessageConverters but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurationExcludeFilter but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.internal.util.logging.Messages but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.messageinterpolation.ParameterMessageInterpolator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.messageinterpolation.AbstractMessageInterpolator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.internal.util.logging.Log but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.condition.BeanTypeRegistry but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.h2.Driver but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.jdbc.DataSourceInitializerInvoker but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.persister.entity.SingleTableEntityPersister but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.cache.spi.access.CollectionDataAccess but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.mapping.PersistentClass but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.persister.spi.PersisterCreationContext but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.cache.spi.access.NaturalIdDataAccess but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.cache.spi.access.EntityDataAccess but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.persister.entity.AbstractEntityPersister but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.persister.internal.PersisterClassResolverInitiator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.persister.spi.PersisterClassResolver but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.transaction.support.TransactionTemplate but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.UUIDGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.GUIDGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.UUIDHexGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.Assigned but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.IdentityGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.SelectGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.enhanced.SequenceStyleGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.SequenceHiLoGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.IncrementGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.ForeignGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.SequenceIdentityGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.id.enhanced.TableGenerator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included app.main.model.Foo but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.transaction.TransactionManagerCustomizers but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.orm.jpa.DataSourceInitializedPublisher$Registrar but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.jdbc.DataSourceProperties but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.jpa.repository.config.EnableJpaRepositories but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.orm.jpa.DataSourceInitializedPublisher but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.jpa.HibernateEntityManager but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.internal.SessionImpl but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.query.QueryLookupStrategy$Key but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.jpa.repository.support.SimpleJpaRepository but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.core.support.TransactionalRepositoryFactoryBeanSupport but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.core.support.RepositoryFragmentsFactoryBean but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.core.support.PropertiesBasedNamedQueries but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.properties.ConfigurationPropertiesScanRegistrar but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.properties.ConfigurationPropertiesScan but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurationPackages$Registrar but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurationPackage but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurationPackages but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included javax.persistence.Entity but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included javax.persistence.GeneratedValue but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included javax.persistence.Id but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurePackages but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.AutoConfigurePackages$BasePackages but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.query.QueryByExampleExecutor but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.PagingAndSortingRepository but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.CrudRepository but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.repository.Repository but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.jpa.repository.JpaRepository but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included app.main.model.FooRepository but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.jpa.repository.support.EntityManagerBeanDefinitionRegistrarPostProcessor but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.orm.jpa.SharedEntityManagerCreator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.jpa.util.JpaMetamodelCacheCleanup but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.jpa.repository.config.JpaMetamodelMappingContextFactoryBean but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.data.jpa.repository.support.JpaEvaluationContextExtension but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.orm.jpa.JpaVendorAdapter but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.internal.engine.resolver.JPATraversableResolver but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.internal.engine.resolver.TraversableResolvers but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.resourceloading.PlatformResourceBundleLocator but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.internal.xml.config.ValidationBootstrapParameters but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.validator.internal.engine.ConfigurationImpl but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.SharedMetadataReaderFactoryContextInitializer$SharedMetadataReaderFactoryBean but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.tuple.Tuplizer but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.tuple.entity.EntityTuplizer but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.tuple.entity.AbstractEntityTuplizer but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.tuple.entity.PojoEntityTuplizer but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.context.properties.ConfigurationBeanFactoryMetadata but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.apache.logging.log4j.message.ReusableMessageFactory but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.apache.logging.log4j.message.DefaultFlowMessageFactory but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.h2.mvstore.db.MVTableEngine but it doesn't exist on the classpath, skipping...\nARRAY: java.sql.Statement\nArray base type resolved as java.sql.Statement\nClass of array is [Ljava.sql.Statement;\nSBG: WARNING: /reflect.json included com.zaxxer.hikari.HikariDataSource but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included com.zaxxer.hikari.HikariConfig but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.internal.EntityManagerMessageLogger but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.internal.EntityManagerMessageLogger_$logger but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.internal.CoreMessageLogger but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.internal.CoreMessageLogger_$logger but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.service.jta.platform.internal.NoJtaPlatform but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.hibernate.Session but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.jdbc.DataSourceInitializerPostProcessor but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.yaml.snakeyaml.Yaml but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.amqp.RabbitProperties but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.amqp.RabbitProperties$Cache but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.amqp.RabbitProperties$Listener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.amqp.RabbitProperties$Ssl but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.amqp.RabbitProperties$Template but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.amqp.core.Queue but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.amqp.rabbit.annotation.RabbitListener but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.amqp.rabbit.connection.ChannelProxy but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included com.rabbitmq.client.Channel but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included com.rabbitmq.client.ShutdownNotifier but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.amqp.rabbit.annotation.RabbitListenerAnnotationBeanPostProcessor but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistry but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.amqp.SimpleRabbitListenerContainerFactoryConfigurer but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.boot.autoconfigure.amqp.DirectRabbitListenerContainerFactoryConfigurer but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.amqp.rabbit.connection.CachingConnectionFactory but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.amqp.core.AnonymousQueue but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.amqp.core.AmqpAdmin but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.integration.config.IntegrationConfigurationBeanFactoryPostProcessor but it doesn't exist on the classpath, skipping...\nSBG: WARNING: /reflect.json included org.springframework.integration.config.DefaultConfiguringBeanFactoryPostProcessor but it doesn't exist on the classpath, skipping...\nSBG: INFO: Registering reflective access to ch.qos.logback.core.Appender\nSBG: INFO: Registering reflective access to org.springframework.boot.logging.logback.LogbackLoggingSystem\nSBG: ERROR: CANNOT RESOLVE org.springframework.boot.logging.logback.LogbackLoggingSystem ???\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.IdentityCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.ReplacingCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.DateConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.RelativeTimeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.LevelConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.ThreadConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.LoggerConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.MessageConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.ClassOfCallerConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.MethodOfCallerConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.LineOfCallerConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.FileOfCallerConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.MDCConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.ThrowableProxyConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.RootCauseFirstThrowableProxyConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.ExtendedThrowableProxyConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.NopThrowableInformationConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.ContextNameConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.CallerDataConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.MarkerConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.PropertyConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.LineSeparatorConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BlackCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.RedCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.GreenCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.YellowCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BlueCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.MagentaCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.CyanCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.WhiteCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.GrayCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BoldRedCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BoldGreenCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BoldYellowCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BoldBlueCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BoldMagentaCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BoldCyanCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.core.pattern.color.BoldWhiteCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.color.HighlightingCompositeConverter\nSBG: INFO: Registering reflective access to ch.qos.logback.classic.pattern.LocalSequenceNumberConverter\nSBG: INFO: Registering reflective access to org.springframework.boot.logging.logback.ColorConverter\nSBG: ERROR: CANNOT RESOLVE org.springframework.boot.logging.logback.ColorConverter ???\nSBG: INFO: Registering reflective access to org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter\nSBG: ERROR: CANNOT RESOLVE org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter ???\nSBG: INFO: Registering reflective access to org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter\nSBG: ERROR: CANNOT RESOLVE org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter ???\nSBG: Proxy registration: #22 proxies\n- [org.springframework.boot.context.properties.ConfigurationProperties, org.springframework.core.annotation.SynthesizedAnnotation]\nSkipping dynamic proxy registration due to missing type: org.springframework.boot.context.properties.ConfigurationProperties\n- [org.springframework.stereotype.Component]\n- [org.springframework.beans.factory.annotation.Qualifier]\n- [org.springframework.boot.context.properties.ConfigurationProperties]\nSkipping dynamic proxy registration due to missing type: org.springframework.boot.context.properties.ConfigurationProperties\n- [org.springframework.context.annotation.Lazy]\n- [org.springframework.web.bind.annotation.RequestMapping]\n- [org.springframework.web.bind.annotation.ResponseStatus]\n- [org.springframework.web.bind.annotation.RequestBody]\n- [org.springframework.web.bind.annotation.ResponseBody]\n- [javax.validation.Validator, org.springframework.aop.SpringProxy, org.springframework.aop.framework.Advised, org.springframework.core.DecoratingProxy]\nSkipping dynamic proxy registration due to missing type: javax.validation.Validator\n- [org.hibernate.jpa.HibernateEntityManagerFactory, org.springframework.orm.jpa.EntityManagerFactoryInfo]\nSkipping dynamic proxy registration due to missing type: org.hibernate.jpa.HibernateEntityManagerFactory\n- [org.hibernate.jpa.HibernateEntityManagerFactory, org.springframework.orm.jpa.EntityManagerFactoryInfo, javax.persistence.EntityManagerFactory]\nSkipping dynamic proxy registration due to missing type: org.hibernate.jpa.HibernateEntityManagerFactory\n- [javax.persistence.Id]\nSkipping dynamic proxy registration due to missing type: javax.persistence.Id\n- [javax.persistence.GeneratedValue]\nSkipping dynamic proxy registration due to missing type: javax.persistence.GeneratedValue\n- [javax.persistence.Transient]\nSkipping dynamic proxy registration due to missing type: javax.persistence.Transient\n- [org.springframework.data.jpa.repository.support.CrudMethodMetadata, org.springframework.aop.SpringProxy, org.springframework.aop.framework.Advised, org.springframework.core.DecoratingProxy]\nSkipping dynamic proxy registration due to missing type: org.springframework.data.jpa.repository.support.CrudMethodMetadata\n- [org.hibernate.jpa.HibernateEntityManager, org.springframework.orm.jpa.EntityManagerProxy]\nSkipping dynamic proxy registration due to missing type: org.hibernate.jpa.HibernateEntityManager\n- [org.springframework.web.bind.annotation.RequestParam]\n- [org.springframework.boot.CommandLineRunner, app.main.Finder, org.springframework.aop.SpringProxy, org.springframework.aop.framework.Advised, org.springframework.core.DecoratingProxy]\nSkipping dynamic proxy registration due to missing type: org.springframework.boot.CommandLineRunner\n- [app.main.model.FooRepository, org.springframework.aop.SpringProxy, org.springframework.aop.framework.Advised, org.springframework.core.DecoratingProxy]\nSkipping dynamic proxy registration due to missing type: app.main.model.FooRepository\n- [org.springframework.amqp.rabbit.annotation.RabbitListener]\nSkipping dynamic proxy registration due to missing type: org.springframework.amqp.rabbit.annotation.RabbitListener\n- [org.springframework.amqp.rabbit.connection.ChannelProxy]\nSkipping dynamic proxy registration due to missing type: org.springframework.amqp.rabbit.connection.ChannelProxy\n[demo-fluxfn:68781]        setup:   3,467.99 ms\nSBG: adding resources - #50 patterns\nProcessing META-INF/spring.factories files...\nSBG: INFO: Registering reflective access to org.springframework.test.context.web.socket.MockServerContainerContextCustomizerFactory\nNEEDS ADDING TO RESOURCE LIST? org.springframework.test.context.web.socket.MockServerContainerContextCustomizerFactory\nSBG: INFO: Registering reflective access to org.springframework.test.context.web.ServletTestExecutionListener\nSBG: ERROR: problem handling flag: allDeclaredConstructors for org.springframework.test.context.web.ServletTestExecutionListener because of missing javax/servlet/ServletContext\nSBG: ERROR: problem handling flag: allDeclaredMethods for org.springframework.test.context.web.ServletTestExecutionListener because of missing javax/servlet/ServletContext\nNEEDS ADDING TO RESOURCE LIST? org.springframework.test.context.web.ServletTestExecutionListener\nSBG: INFO: Registering reflective access to org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener\nNEEDS ADDING TO RESOURCE LIST? org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener\nSBG: INFO: Registering reflective access to org.springframework.test.context.support.DependencyInjectionTestExecutionListener\nNEEDS ADDING TO RESOURCE LIST? org.springframework.test.context.support.DependencyInjectionTestExecutionListener\nSBG: INFO: Registering reflective access to org.springframework.test.context.support.DirtiesContextTestExecutionListener\nNEEDS ADDING TO RESOURCE LIST? org.springframework.test.context.support.DirtiesContextTestExecutionListener\nSBG: INFO: Registering reflective access to org.springframework.test.context.transaction.TransactionalTestExecutionListener\nSBG: ERROR: problem handling flag: allDeclaredConstructors for org.springframework.test.context.transaction.TransactionalTestExecutionListener because of missing org/springframework/transaction/interceptor/TransactionAttributeSource\nSBG: ERROR: problem handling flag: allDeclaredMethods for org.springframework.test.context.transaction.TransactionalTestExecutionListener because of missing org/springframework/transaction/interceptor/TransactionAttributeSource\nNEEDS ADDING TO RESOURCE LIST? org.springframework.test.context.transaction.TransactionalTestExecutionListener\nSBG: INFO: Registering reflective access to org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener\nSBG: ERROR: problem handling flag: allDeclaredConstructors for org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener because of missing org/springframework/transaction/interceptor/TransactionAttribute\nSBG: ERROR: problem handling flag: allDeclaredMethods for org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener because of missing org/springframework/transaction/interceptor/TransactionAttribute\nNEEDS ADDING TO RESOURCE LIST? org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener\nSBG: INFO: Registering reflective access to org.springframework.test.context.event.EventPublishingTestExecutionListener\nNEEDS ADDING TO RESOURCE LIST? org.springframework.test.context.event.EventPublishingTestExecutionListener\nSBG: INFO: Registering reflective access to org.springframework.beans.ExtendedBeanInfoFactory\nNEEDS ADDING TO RESOURCE LIST? org.springframework.beans.ExtendedBeanInfoFactory\nFound no META-INF/spring.components -\u003e generating one...\nComputed spring.components is \nvvv\n-- listing properties --\n^^^\n\u003e\u003e\u003e {}\nBAOS: #\n#Fri Sep 13 13:52:05 JST 2019\n\nSBG: forcing explicit class initialization at build or runtime:\nInitializationDescriptor #124 buildtime-classes   #32 buildtime-packages   #5 runtime-classes    #1 runtime-packages\n\nRegistering these packages for buildtime initialization: \n[reactor.netty.resources, reactor.netty, reactor.netty.channel, reactor.netty.http, reactor.netty.http.client, reactor.netty.http.server, reactor.netty.http.websocket, reactor.netty.resources, reactor.netty.tcp, reactor.netty.udp, reactor.util, org.apache.logging.log4j, org.apache.logging.slf4j, org.jboss.logging, org.hibernate.validator.internal.metadata.provider, org.hibernate.validator.internal.metadata.aggregated, org.hibernate.validator.internal.metadata.raw, org.hibernate.validator.internal.engine, ch.qos.logback.classic.spi, javax.validation, org.hibernate.validator.constraints, org.hibernate.validator.internal.engine.groups, org.hibernate.validator.internal.engine.valueextraction, org.hibernate.validator.internal.util, org.hibernate.validator.internal.cfg.context, org.hibernate.validator.internal.metadata.core, org.hibernate.validator.internal.metadata.aggregated.rule, org.hibernate.validator.internal.engine.constraintvalidation, org.hibernate.validator.internal.util.logging.LoggerFactory, ch.qos.logback.core, ch.qos.logback.classic, ch.qos.logback.classic.util]\nRegistering these packages for runtime initialization: \n[io.netty.handler.codec.http2]\nWARNING: Could not register reflection metadata for org.springframework.test.context.web.ServletTestExecutionListener. Reason: java.lang.NoClassDefFoundError: javax/servlet/ServletContext.\nWARNING: Could not register reflection metadata for org.springframework.validation.beanvalidation.MethodValidationPostProcessor. Reason: java.lang.NoClassDefFoundError: Ljavax/validation/Validator;.\nWARNING: Could not register reflection metadata for org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator. Reason: java.lang.NoClassDefFoundError: org/aspectj/util/PartialOrder$PartialComparable.\nWARNING: Could not register reflection metadata for org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/interceptor/TransactionAttribute.\nWARNING: Could not register reflection metadata for org.springframework.test.context.transaction.TransactionalTestExecutionListener. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/interceptor/TransactionAttributeSource.\nWarning: class initialization of class io.netty.util.internal.logging.Log4JLogger failed with exception java.lang.NoClassDefFoundError: org/apache/log4j/Priority. This class will be initialized at run time because option --allow-incomplete-classpath is used for image building. Use the option --initialize-at-run-time=io.netty.util.internal.logging.Log4JLogger to explicitly request delayed initialization of this class.\nWarning: class initialization of class reactor.netty.tcp.TcpMetricsHandler failed with exception java.lang.NoClassDefFoundError: io/micrometer/core/instrument/MeterRegistry. This class will be initialized at run time because option --allow-incomplete-classpath is used for image building. Use the option --initialize-at-run-time=reactor.netty.tcp.TcpMetricsHandler to explicitly request delayed initialization of this class.\nWARNING: Could not register reflection metadata for org.springframework.test.context.web.ServletTestExecutionListener. Reason: java.lang.NoClassDefFoundError: javax/servlet/ServletContext.\nWARNING: Could not register reflection metadata for org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator. Reason: java.lang.NoClassDefFoundError: org/springframework/aop/aspectj/autoproxy/AspectJAwareAdvisorAutoProxyCreator$PartiallyComparableAdvisorHolder.\nWARNING: Could not register reflection metadata for org.springframework.test.context.transaction.TransactionalTestExecutionListener. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/interceptor/TransactionAttributeSource.\nWARNING: Could not register reflection metadata for org.springframework.validation.beanvalidation.MethodValidationPostProcessor. Reason: java.lang.NoClassDefFoundError: Ljavax/validation/Validator;.\nWARNING: Could not register reflection metadata for org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/interceptor/TransactionAttribute.\nWARNING: Could not register reflection metadata for org.springframework.test.context.web.ServletTestExecutionListener. Reason: java.lang.NoClassDefFoundError: javax/servlet/ServletContext.\nWARNING: Could not register reflection metadata for org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator. Reason: java.lang.NoClassDefFoundError: org/springframework/aop/aspectj/autoproxy/AspectJAwareAdvisorAutoProxyCreator$PartiallyComparableAdvisorHolder.\nWARNING: Could not register reflection metadata for org.springframework.test.context.transaction.TransactionalTestExecutionListener. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/interceptor/TransactionAttributeSource.\nWARNING: Could not register reflection metadata for org.springframework.validation.beanvalidation.MethodValidationPostProcessor. Reason: java.lang.NoClassDefFoundError: Ljavax/validation/Validator;.\nWARNING: Could not register reflection metadata for org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/interceptor/TransactionAttribute.\nWARNING: Could not register reflection metadata for org.springframework.test.context.web.ServletTestExecutionListener. Reason: java.lang.NoClassDefFoundError: javax/servlet/ServletContext.\nWARNING: Could not register reflection metadata for org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator. Reason: java.lang.NoClassDefFoundError: org/springframework/aop/aspectj/autoproxy/AspectJAwareAdvisorAutoProxyCreator$PartiallyComparableAdvisorHolder.\nWARNING: Could not register reflection metadata for org.springframework.test.context.transaction.TransactionalTestExecutionListener. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/interceptor/TransactionAttributeSource.\nWARNING: Could not register reflection metadata for org.springframework.validation.beanvalidation.MethodValidationPostProcessor. Reason: java.lang.NoClassDefFoundError: Ljavax/validation/Validator;.\nWARNING: Could not register reflection metadata for org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/interceptor/TransactionAttribute.\n[demo-fluxfn:68781]   (typeflow):  28,784.24 ms\n[demo-fluxfn:68781]    (objects):  15,857.04 ms\n[demo-fluxfn:68781]   (features):   2,668.03 ms\n[demo-fluxfn:68781]     analysis:  49,723.57 ms\n[demo-fluxfn:68781]     (clinit):   1,282.33 ms\n[demo-fluxfn:68781]     universe:   3,306.61 ms\n[demo-fluxfn:68781]      (parse):   3,878.81 ms\n[demo-fluxfn:68781]     (inline):   5,140.56 ms\n[demo-fluxfn:68781]    (compile):  32,443.05 ms\n[demo-fluxfn:68781]      compile:  43,943.36 ms\n[demo-fluxfn:68781]        image:   3,739.10 ms\n[demo-fluxfn:68781]        write:   1,274.65 ms\n[demo-fluxfn:68781]      [total]: 110,291.17 ms\n[INFO] ------------------------------------------------------------------------\n[INFO] BUILD SUCCESS\n[INFO] ------------------------------------------------------------------------\n[INFO] Total time:  01:56 min\n[INFO] Finished at: 2019-09-13T13:53:48+09:00\n[INFO] ------------------------------------------------------------------------\n\n$ ./target/classes/demo-fluxfn \nSep 13, 2019 1:54:54 PM com.fasterxml.jackson.databind.ext.Java7Support \u003cclinit\u003e\nWARNING: Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added\n2019-09-13 13:54:54.008  INFO --- [           main] com.example.App                          : Started in 0.005 seconds\n```\n\n```\n$ curl localhost:8080 -w '\\n'\nHello World!\n\n$ curl localhost:8080/messages -d '{\"text\":\"Hello\"}' -H \"Content-Type: application/json\" -w \"\\n\"\n{\"text\":\"Hello\"}\n\n$ curl localhost:8080/messages -w \"\\n\"\n[{\"text\":\"Hello\"}]\n```\n\nyou can also build for Linux with docker as follows:\n\n```\nchmod +x mvnw\ndocker run --rm \\\n           -v \"$PWD\":/usr/src \\\n           -v \"$HOME/.m2\":/root/.m2 \\\n           -w /usr/src \\\n           oracle/graalvm-ce:19.2.0 \\\n           ./mvnw clean package -Pgraal\n```\n\n#### Deploy to Cloud Foundry\n\nBuild a image for Linux with Docker\n\n```\nchmod +x mvnw\ndocker run --rm \\\n           -v \"$PWD\":/usr/src \\\n           -v \"$HOME/.m2\":/root/.m2 \\\n           -w /usr/src \\\n           oracle/graalvm-ce:19.2.0 \\\n           ./mvnw clean package -Pgraal\n```\n\n```\ndocker run -p 8080:8080 --rm \\\n   -v ${PWD}/target/classes:/work \\\n   cloudfoundry/cflinuxfs3 \\\n   /work/demo-fluxfn\n```\n\nand `cf push`\n\n```\nmkdir -p build\ncp target/classes/demo-fluxfn ./build/\ncf push demo-fluxfn --random-route -m 128m -b binary_buildpack -p ./build -c './demo-fluxfn'\n```\n\n```\nPushing app demo-fluxfn to org myorg / space development as maki@example.com...\nGetting app info...\nCreating app with these attributes...\n+ name:         demo-fluxfn\n  path:         /private/tmp/demo-fluxfn/build\n  buildpacks:\n+   binary_buildpack\n+ command:      ./demo-fluxfn\n+ memory:       128M\n  routes:\n+   demo-fluxfn-cheerful-chimpanzee.cfapps.io\n\nCreating app demo-fluxfn...\nMapping routes...\nComparing local files to remote cache...\nAll files found in remote cache; nothing to upload.\nWaiting for API to complete processing files...\n\nStaging app and tracing logs...\n   Downloading binary_buildpack...\n   Downloaded binary_buildpack\n   Cell 78d73e58-9a73-4317-bb61-c56223af688b creating container for instance 473b0faf-bdf8-4765-ac70-f31f8ab27db7\n   Cell 78d73e58-9a73-4317-bb61-c56223af688b successfully created container for instance 473b0faf-bdf8-4765-ac70-f31f8ab27db7\n   Downloading app package...\n   Downloaded app package (7.7M)\n   -----\u003e Binary Buildpack version 1.0.33\n   Exit status 0\n   Uploading droplet, build artifacts cache...\n   Uploading droplet...\n   Uploading build artifacts cache...\n   Uploaded build artifacts cache (215B)\n   Uploaded droplet (7.7M)\n   Uploading complete\n   Cell 78d73e58-9a73-4317-bb61-c56223af688b stopping instance 473b0faf-bdf8-4765-ac70-f31f8ab27db7\n   Cell 78d73e58-9a73-4317-bb61-c56223af688b destroying container for instance 473b0faf-bdf8-4765-ac70-f31f8ab27db7\n   Cell 78d73e58-9a73-4317-bb61-c56223af688b successfully destroyed container for instance 473b0faf-bdf8-4765-ac70-f31f8ab27db7\n\nWaiting for app to start...\n\nname:              demo-fluxfn\nrequested state:   started\nroutes:            demo-fluxfn-cheerful-chimpanzee.cfapps.io\nlast uploaded:     Wed 04 Sep 16:31:12 JST 2019\nstack:             cflinuxfs3\nbuildpacks:        binary\n\ntype:            web\ninstances:       1/1\nmemory usage:    128M\nstart command:   ./demo-fluxfn\n     state     since                  cpu    memory      disk      details\n#0   running   2019-09-04T07:31:26Z   0.0%   0 of 128M   0 of 1G   \n```\n\n## License\n\nLicensed under the Apache License, Version 2.0.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaking%2Fvanilla-spring-webflux-fn-blank","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaking%2Fvanilla-spring-webflux-fn-blank","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaking%2Fvanilla-spring-webflux-fn-blank/lists"}