IntelliJ에서 테스트를 실행할 때 또는 개발한 애플리케이션을 실행할 때에도 이러한 에러가 발생하면서 실행되지 않는 경우가 있다. IntelliJ에서 바로 실행할 때에는 class path를 자동으로 잡게 하는데, 이 때문에 run command가 너무 길어져서 발생하는 문제이다. 정상적으로 실행되는 경우에도 알고 보면 아래처럼 어마 무시하게 run command가 길다.
이 run command에 길이가 OS limit를 넘으면 실행할 수 없게된다. 이를 해결하기 위해서는 Run/Debug Configuration
에서 Shorten command line
의 옵션을 수정한다.
4가지 옵션중 하나를 선택할 수 있다.
- None: 기본 옵션 값. IDE에서 긴 classpath를 줄여주지 않는다. command line이 OS limit를 초과하는 경우 IDEA는 애플리케이션을 실행할 수 없다. - 에러가 발생했다면 None으로 설정된 상태였을 것이다.
- JAR Manifest: IDE는 임시 claspath.jar를 사용해서 긴 classpath 사용을 회피한다. 실제 classpath는 classpath.jar의 MANIFEST.MF 안에 정의되어 있다.
- classpath file: text 파일에 긴 classpath를 써둔다.
- User-local default: Legacy property이다. IDE는 idea/workspace.xml 파일에서 지정된 옵션 값을 따른다.
따라서 Error running '{ClassName}': Command line is too long. Shorten command line for {ClassName}.
에러가 발생할 때 가장 쉽게 해결할 수 있는 방법은 Shorten command line 옵션 값을 JAR Manifest
로 지정한다.
Reference
- https://blog.jetbrains.com/idea/2017/10/intellij-idea-2017-3-eap-configurable-command-line-shortener-and-more/
'etc' 카테고리의 다른 글
nGrinder를 사용한 REST 부하 테스트 (0) | 2020.02.12 |
---|---|
DBeaver 데이터 뷰어에서 시간까지 볼 수 있게 날짜 형식(Date Format) 변경하기 (0) | 2020.01.16 |
Akka란? - 필요성, Actor model, Akka의 특징 (0) | 2019.09.10 |
REST 정의 및 특징, RESTful API (0) | 2019.08.31 |
openssl에서 unable to write 'random state' 에러 발생원인 및 해결법 (0) | 2019.08.30 |
댓글