stdoutでSpringBootロゴを無効にする方法は?


88

素敵だが非常に目に見えるASCIISpringブートロゴを無効にする方法はありますか?

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v1.1.8.RELEASE)

... Spring Bootアプリを実行するたびにSTDOUTにダンプされますか?

logback.xmlですべてのロギングをERRORに切り替えましたが、何もしませんでした。

<root level="ERROR">
    <appender-ref ref="STDOUT" />
</root>

編集:ドキュメントでは「ロゴ」とは呼ばれていません。検索に適した用語は「バナー」です。


2
spring.main.show_banner=falseapplication.propertiesに追加します。
M. Deinum 2014年

2
「spring.main.show_banner = false」は非推奨になっていると言われています
mxi1 2016

回答:


136

http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-banner

new SpringApplicationBuilder()
    .showBanner(false)
    .sources(Parent.class)
    .child(Application.class)
    .run(args);

編集 SpringBootの新しいバージョン(現在は1.3.3)では、それを行う方法は次のとおりです。

1)application.properties

spring.main.banner-mode=off

2)application.yml

spring:
    main:
        banner-mode: "off"

3)主な方法

public static void main(String[] args) {
    SpringApplication app = new SpringApplication(MySpringConfiguration.class);
    app.setBannerMode(Banner.Mode.OFF);
    app.run(args);
}

ドキュメント

編集:

これを環境変数で変更するには、ドットの代わりにアンダースコア付きのプロパティを使用します。試してみてください:

SPRING_MAIN_BANNER-MODE = off

外部化された構成については、ドキュメントを参照してください。


1
完璧です。私は必死に「ロゴ」についてのドキュメントをグーグルで検索していましたが、それはバナーと呼ばれています。有難う御座います !
Fabien Benoit-Koch

5
しかし、それは良いことです
Traubenfuchs 2016年

1
あるべきnew SpringApplicationBuilder().bannerMode(Banner.Mode.OFF)showBannerとしては、現在推奨されていません
オンドレイSkalickaを

これに相当する環境変数は何ですか?Spring Bootアプリに直接アクセスできないため(Dockerイメージです)、env変数を介してSpringプロパティを設定しています。
batjko 2017年

環境変数の場合、サーバーが環境変数のダッシュをサポートしていない場合に備えて、「-」の代わりにアンダースコアを付けた「SPRING_MAIN_BANNER_MODE」をお勧めします。
pconrey

28

もう1つのオプションは、banner.txtファイルのカスタムバナーをクラスパスに追加することです。これにより、カスタムバナーに変更されます。

  1. クラスパスにファイルbanner.txtを作成します(例:src / main / resources
  2. カスタムバナーを編集する
  3. アプリケーションを実行する

4
そして、これを行う場合、これらのツールが役立つ可能性があります:google.ca/search
ラマン

13

これは、Spring Boot1.3でわずかに変更されました。プロパティは現在:

spring.main.banner_mode=off

コードでは、次のようになります。

springApplication.setBannerMode(Banner.Mode.OFF);

またはビルダーを使用する:

new SpringApplicationBuilder()
.bannerMode(Banner.Mode.OFF)


5

Spring Boot 1.3とapplication.yml(プロパティではない)を使用している場合は、「オフ」を引用する必要があります。

spring:
  main:
    banner_mode: 'OFF'

2

src / main / resourcesの下にファイル「application.yml」を作成し、以下のコードを貼り付けます。これで作業は完了です。

spring:
    main:
        banner-mode: "off"


0

このコードを使用してバナーを削除できます

import org.springframework.boot.Banner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication


public class SpringBootConsoleApplication {

    public static void main(String[] args) throws Exception {

        SpringApplication app = new SpringApplication(SpringBootConsoleApplication.class);
        app.setBannerMode(Banner.Mode.OFF);
        app.run(args);

    }

}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.