Could not resolve placeholder in spring boot after build in launch4j

59 Views Asked by At

I got a spring boot application with a common @value placeholder, stored in "application.properties":

enter image description here

It works fine. But when the application in packed as "exe" in launch4j, i became an error

Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'supported.extensions' in value "${supported.extensions}"

Here is my build.gradle:


plugins {
    id 'java'
    id 'org.springframework.boot' version '3.2.3'
    id 'io.spring.dependency-management' version '1.1.4'
    id 'edu.sc.seis.launch4j' version '3.0.5'
    id "com.github.johnrengelman.shadow" version "8.1.1"
}

group = 'ru.rgbb'
version = '0.0.1-SNAPSHOT'

java {
    sourceCompatibility = '21'
}

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation('org.springframework.boot:spring-boot-starter')
            {
                exclude group: "org.springframework.boot", module: "spring-boot-starter-logging";
            }
    implementation 'org.springframework.boot:spring-boot-starter-log4j2'
    implementation 'org.apache.logging.log4j:log4j-spring-boot'
    compileOnly 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.named('test') {
    useJUnitPlatform()
}

launch4j() {
    mainClassName = 'ru.rgbb.fastthumbnails.FastThumbnailsApplication'
    headerType = 'console'
    copyConfigurable = []
    jarTask = project.tasks.shadowJar
}

And created "exe" with properties inside it (values are also presented inside it): enter image description here

"application.properties" are packed into created "exe", but it seems they couln't be found. Can someone help?

0

There are 0 best solutions below