0

コマンド ラインから特定の Spring ブート プロファイルをロードできません。

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

アプリケーションは指定されたプロファイルを無視し、mySQL の代わりに H2 Db を使用して 8080 で開始します。

4

2 に答える 2

4

という名前の別のファイルを作成し、そのファイルapplication-local_mysql.ymllocal_mysql関連する設定を含めます。すべてのプロファイルに対して同じことを行います。にapplication.ymlは、すべてのプロファイルに共通の構成があります。

ファイルは$CLASSPATH\config\場所にある必要があります。

次に、アプリケーションを実行します。

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

参照:外部化された構成

于 2015-08-25T16:15:48.883 に答える