代码之家  ›  专栏  ›  技术社区  ›  B. Bal

从传递JVM参数构建.gradle在Spring Boot 2.0.3中

  •  1
  • B. Bal  · 技术社区  · 6 年前

    我在尝试将JVM参数从传递到Spring启动应用程序时遇到了一些问题构建.gradle文件。

    buildscript ...
    
    apply plugin: 'java'
    apply plugin: 'eclipse'
    apply plugin: 'org.springframework.boot'
    apply plugin: 'io.spring.dependency-management'
    
    ...
    def devConfigFolder = "/abc"
    applicationDefaultJvmArgs = ["-DconfigFolder=$devConfigFolder"]
    dependencies {
       ...
    }
    

    以及我尝试使用占位符的类:

    @Component
    public class PClass {
    
       private static final String CONF = "configFolder";
       @Value("${" + CONF+ "}")
       private String configFolder;
    }
    

    这是我收到的例外:

    IllegalArgumentException: Could not resolve placeholder 'configFolder' in value "${configFolder}"
    

    我试过使用bootRun{jvmArgs},但不起作用。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Anand Varkey Philips Rohit upadhyay    6 年前

    可以在中设置这些值应用程序属性/并在@value注释中使用该属性键。

    应用-产品属性

    configFolder="somefolder/path"
    

    可以在运行时设置/修改这些属性文件。

    你可以看看这个(5.1)部分: https://www.baeldung.com/properties-with-spring