[java] Jansi를 사용한 자바 프로그램에서 터미널 색상 조합하기

Java에서 터미널 출력에 색상을 추가하려면 Jansi 라이브러리를 사용할 수 있습니다. Jansi는 Java에서 ANSI 이스케이프 시퀀스를 사용하여 터미널 색상을 조작할 수 있는 기능을 제공하는 라이브러리입니다.

Jansi 라이브러리 추가하기

Jansi 라이브러리를 프로젝트에 추가하려면 Maven을 사용하거나 JAR 파일을 직접 추가할 수 있습니다. Maven을 사용하는 경우 pom.xml 파일에 다음 의존성을 추가하면 됩니다:

<dependency>
    <groupId>org.fusesource.jansi</groupId>
    <artifactId>jansi</artifactId>
    <version>1.18</version>
</dependency>

색상 조합하기

Jansi를 사용하면 터미널 출력에 다양한 색상을 조합할 수 있습니다. 다음은 Jansi를 사용하여 터미널에 빨간색으로 “Hello, World!”를 출력하는 예제 코드입니다:

import org.fusesource.jansi.Ansi;
import org.fusesource.jansi.AnsiConsole;

public class HelloWorld {
    public static void main(String[] args) {
        AnsiConsole.systemInstall();

        System.out.println(Ansi.ansi().fgRed().a("Hello, World!").reset());

        AnsiConsole.systemUninstall();
    }
}

위의 코드에서 AnsiConsole.systemInstall()AnsiConsole.systemUninstall()은 Jansi의 초기화 및 정리 작업을 수행합니다. Ansi.ansi().fgRed().a("Hello, World!").reset()는 빨간색으로 텍스트를 출력하기 위한 ANSI 이스케이프 시퀀스를 생성하는 부분입니다. fgRed()는 텍스트 색상을 빨간색으로 설정하고, a("Hello, World!")는 출력할 텍스트를 지정합니다. reset()은 색상 설정을 초기화하는 역할을 합니다.

이제 위의 예제 코드를 실행하면 터미널에서 빨간색으로 “Hello, World!”를 볼 수 있습니다.

참고 자료