java - Spring Boot Maven 构建 application.properties 中随机值的问题

标签 java eclipse maven spring-boot

例如,我编辑了 application.properties

spring.mail.host=stmp.test.com

spring.mail.host=${server.mail.host}

我在启动时将这些属性覆盖为正确的值。这工作正常,直到我想运行 Maven 来构建我的应用程序。

我收到以下异常

org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class

我认为问题是 Maven 也需要这些值,但是如何以及在哪里插入它们?我不想在 cli 上运行 mvn。

最佳答案

我认为@ Nicholas K指出您可以在 Maven 命令中传递这些值。例如,使用参数 mvn spring-boot:run "-Dserver.mail.host=mailhost"

您还可以设置一个应该注入(inject)的环境变量:

导出 SERVER_MAIL_HOST=mailhost

或者,如果您有时不想设置它们,您可以在属性文件中为属性设置默认值:

spring.mail.host=${server.mail.host:defaultmailhost}

或者default it to an empty string

关于java - Spring Boot Maven 构建 application.properties 中随机值的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52836100/

相关文章:

java - 打印 JscrollPane 对象

java - Spring Boot - 处理 JSON 或 HTML 的错误 Controller

java - JSF 方面在 Eclipse 中不可用

java - 我的java代码从java文件eclipse中消失

android - 如何将我的应用程序从 Eclipse 加载到我的 Android 手机而不是 AVD

java - IntelliJ 14.1.4 中未导入 Maven 依赖项

java - 在包含集合、对象的 HashMap 中搜索这些对象

Java正则表达式到groovy

java - Thymeleaf 无法通过 Spring Boot 和 Controller 解析模型

java - 如何设置 Lenskit 推荐工具包以在网站中运行?