[java] Jigsaw 모듈의 테스트와 디버깅 방법

이 문서에서는 자바 9에서 소개된 Jigsaw 모듈 시스템의 테스트와 디버깅 방법을 알아보겠습니다. Jigsaw 모듈 시스템은 자바 애플리케이션을 모듈화하여 성능을 향상시키고, 라이브러리 간의 의존성 충돌을 방지하는 기능을 제공합니다.

모듈의 테스트

Jigsaw 모듈을 테스트하기 위해서는 아래와 같은 단계를 따를 수 있습니다:

  1. 모듈 정보 파일(module-info.java)을 작성합니다. 이 파일은 해당 모듈의 의존성 및 내보내기할 패키지 등을 정의합니다.
  2. javac 명령어를 사용하여 모듈을 컴파일합니다:
    javac --module-source-path src -d mods $(find src -name "*.java")
    

    위 명령어는 src 디렉토리에 있는 소스 파일들을 모듈 경로(mods)에 컴파일합니다. --module-source-path 옵션은 소스 파일들이 있는 경로를 지정하고, -d 옵션은 컴파일된 모듈을 저장할 경로를 지정합니다.

  3. 테스트를 위해 작성한 모듈을 실행합니다:
    java --module-path mods --module <모듈명>/<메인_클래스>
    

모듈의 디버깅

Jigsaw 모듈을 디버깅하기 위해서는 다음과 같은 절차를 따를 수 있습니다:

  1. javac 명령어를 사용하여 모듈을 컴파일합니다. 이때 -g 옵션을 사용하여 디버깅 정보를 포함시킵니다:
    javac -g --module-source-path src -d mods $(find src -name "*.java")
    
  2. 디버깅을 위해 작성한 모듈을 실행합니다. 이때 -Xdebug-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=<포트번호> 옵션을 함께 사용합니다:
    java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=<포트번호> --module-path mods --module <모듈명>/<메인_클래스>
    
  3. IDE나 디버깅 도구를 사용하여 디버깅 세션을 시작합니다. 이때 포트번호는 위에서 지정한 포트번호를 사용합니다.
  4. 디버깅 도구를 통해 모듈 내부의 코드를 디버깅하고 오류를 찾습니다.

위의 방법을 사용하여 Jigsaw 모듈의 테스트와 디버깅을 수행할 수 있습니다. 추가적인 자세한 내용은 공식 문서를 참고하시기 바랍니다.