java - Spring Boot 未加载特定配置文件

标签 java spring maven spring-boot spring-boot-maven-plugin

我无法从命令行加载特定的 Spring boot 配置文件。

applciation.yml 文件内容如下,它位于我的应用程序的资源文件夹中。

server:
    port: 8787
spring:
  application:
    name: demo

spring:
  profiles: local_mysql
  datasource:
    url: jdbc:mysql://localhost:3306/demo?createDatabaseIfNotExist=true
    username: root
    password: root
    driverClassName: com.mysql.jdbc.Driver
  jpa:
    hibernate:
      ddl-auto: update
      dialect: org.hibernate.dialect.MySQLDialect
server:
    port: 8787

spring:
  profiles: development
  datasource:
    url: jdbc:mysql://localhost:3306/demo?createDatabaseIfNotExist=true
    username: admin
    password: admin
    driverClassName: com.mysql.jdbc.Driver
  jpa:
    hibernate:
      ddl-auto: update
      dialect: org.hibernate.dialect.MySQLDialect
server:
    port: 8788

执行mvn clean package后 并运行应用程序 java -jar -Dspring.profiles.active=local_mysql target\demo-1.0.0-SNAPSHOT.jar

应用程序忽略指定的配置文件,仅在 8080 上启动,使用 H2 Db 而不是 mySQL。

最佳答案

创建名为 application-local_mysql.yml 的单独文件,并在该文件中包含 local_mysql 相关设置。对所有配置文件执行相同的操作。在 application.yml 中具有所有配置文件通用的配置。

这些文件应位于 $CLASSPATH\config\ 位置。

然后运行您的应用程序。

java -jar -Dspring.profiles.active=local_mysql target\demo-1.0.0-SNAPSHOT.jar

引用号:Externalized Configuration

关于java - Spring Boot 未加载特定配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32208801/

相关文章:

java - 安卓改造失败()

java - 使用 powermockito 验证 jacoco 覆盖率测试,无需 mvn 命令

java - 变换+缩放一组点

java - jboss spring applicationContext 在 web.xml 中启动时加载

java - 在 SpringBoot 项目的 RestController 中使用静态变量

Java无法从pom中读取变量

maven - 如何修复 Maven Mulesoft 代码的构建错误

java - 应用程序显示与 Google 商店中的 Moto E 不兼容

java - Spring Boot 多上下文 application.properties 问题

java - 添加 jsoup 作为提供的依赖项后,Storm 命令失败并出现 NoClassDefFoundError