When I assemble the jar and execute it have the following error:
Код: Выделить всё
java -Dmicronaut.server.port=17672 -jar dictionary-be-0.1.jar Message: No bean of type [java.sql.Connection] exists. * [Connection] requires the presence of a bean of type [javax.sql.DataSource]. * [DataSource] requires the presence of a bean of type [io.micronaut.configuration.jdbc.hikari.DatasourceConfiguration]. * [DatasourceConfiguration] is disabled because: - Configuration requires entries under the prefix: [datasources.default] Path Taken: new SecurityFilter(Collection securityRules,Collection authenticationFetchers,SecurityConfiguration securityConfiguration) --> new SecurityFilter(Collection securityRules,[Collection authenticationFetchers],SecurityConfiguration securityConfiguration) --> new BasicAuthAuthenticationFetcher([Authenticator authenticator]) --> new Authenticator(BeanContext beanContext,List reactiveAuthenticationProviders,[List authenticationProviders],List deprecatedAuthenticationProviders,SecurityConfiguration securityConfiguration) --> new AuthenticationProviderUserPassword([UserService userService]) --> new UserService([Connection connection],TransactionOperations transactionManager) at io.micronaut.context.AbstractInitializableBeanDefinition.resolveBean(AbstractInitializableBeanDefinition.java:2181) at io.micronaut.context.AbstractInitializableBeanDefinition.getBeanForConstructorArgument(AbstractInitializableBeanDefinition.java:1328) at com.dictionary.service.$UserService$Definition.instantiate(Unknown Source) at io.micronaut.context.DefaultBeanContext.resolveByBeanFactory(DefaultBeanContext.java:2330) Код: Выделить всё
datasources.default.url=jdbc:postgresql://localhost:5432/postgres #datasources.default.url=${JDBC_DATABASE_URL} datasources.default.username= datasources.default.password= datasources.default.db-type=postgres datasources.default.driver-class-name=org.postgresql.Driver datasources.default.dialect=POSTGRES Код: Выделить всё
datasources: default: driverClassName: org.postgresql.Driver password: "" url: jdbc:postgresql://localhost:5432/postgres username: "" I have a feeling that the Gradle file is not correct, but I have no clue what exactly. Sorry for the impressive configuration, I was trying different options.
Код: Выделить всё
plugins { java application id("org.jetbrains.kotlin.jvm") version "1.9.22" id("com.google.devtools.ksp") version "1.9.22-1.0.17" id("io.micronaut.application") version "4.3.2" id("io.micronaut.test-resources") version "4.3.2" } version = "0.1" group = "com.dictionary" val kotlinVersion = project.properties.get("kotlinVersion") repositories { mavenCentral() } dependencies { ksp("io.micronaut.data:micronaut-data-processor") ksp("io.micronaut:micronaut-http-validation") ksp("io.micronaut.serde:micronaut-serde-processor") ksp("io.micronaut.security:micronaut-security-annotations") annotationProcessor("io.micronaut.validation:micronaut-validation-processor") implementation("io.micronaut.validation:micronaut-validation") implementation("io.micronaut.data:micronaut-data-jdbc") compileOnly("io.micronaut.data:micronaut-data-jdbc") runtimeOnly("io.micronaut.data:micronaut-data-jdbc") implementation("io.micronaut.kotlin:micronaut-kotlin-runtime") implementation("io.micronaut.reactor:micronaut-reactor-http-client") annotationProcessor("io.micronaut.data:micronaut-data-processor:1.0.2") implementation("io.micronaut.serde:micronaut-serde-jackson") runtimeOnly("io.micronaut.sql:micronaut-jdbc-hikari") compileOnly("io.micronaut.sql:micronaut-jdbc-hikari") implementation("io.micronaut.sql:micronaut-jdbc-hikari") implementation("io.micronaut.security:micronaut-security-jwt") annotationProcessor("io.micronaut.data:micronaut-data-processor") implementation("io.micronaut.data:micronaut-data-tx-hibernate") implementation("org.jetbrains.kotlin:kotlin-reflect:${kotlinVersion}") implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlinVersion}") runtimeOnly("org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlinVersion}") compileOnly("org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlinVersion}") compileOnly("io.micronaut:micronaut-http-client") runtimeOnly("ch.qos.logback:logback-classic") implementation("io.micronaut.data:micronaut-data-hibernate-reactive") implementation("org.slf4j:slf4j-api:2.0.12") runtimeOnly("com.fasterxml.jackson.module:jackson-module-kotlin") runtimeOnly("org.postgresql:postgresql") runtimeOnly("org.yaml:snakeyaml") testImplementation("io.micronaut:micronaut-http-client") implementation("com.amazonaws:aws-java-sdk:1.12.671") } application { mainClass.set("com.dictionary.ApplicationKt") } java { sourceCompatibility = JavaVersion.toVersion("17") targetCompatibility = JavaVersion.toVersion("17") } tasks.withType { manifest { attributes["Main-Class"] = "com.dictionary.ApplicationKt" } isZip64 = true // To avoid the duplicate handling strategy error duplicatesStrategy = DuplicatesStrategy.EXCLUDE // To add all of the dependencies otherwise a "NoClassDefFoundError" error from(sourceSets.main.get().output) from({ isZip64 = true configurations.runtimeClasspath.get().filter { it.name.endsWith("jar") }.map { zipTree(it) } }) } tasks { val stage by registering { dependsOn(build, clean) } build { mustRunAfter(clean) } distTar { enabled = false } distZip { enabled = false } dockerBuild { enabled = false } dockerBuildNative { enabled = false } dockerfile { enabled = false } dockerfileNative { enabled = false } buildLayers { enabled = false } runnerJar { enabled = false } nativeBuild { enabled = false } nativeCompileClasspathJar { enabled = false } } graalvmNative.toolchainDetection.set(false) micronaut { runtime("netty") testRuntime("junit5") processing { incremental(true) annotations("com.dictionary.*") } testResources { additionalModules.add("jdbc-postgresql") } } Источник: https://stackoverflow.com/questions/781 ... es-default
Мобильная версия