We've opened a new role Backend Java/Spring Team Lead with Integration Experience. Part-time and entirely remote, of course.
Fix “Command Line is Too Long” in IntelliJ
Last updated: January 8, 2024
1. Overview
In this tutorial, we’ll see how to fix the “Command line is too long” error when running a Java main class in a Spring Boot application from IntelliJ IDEA.
2. Root Cause
When lunch a program you can encounter “Command line is too long” error. This error occurs when the classpath gets too long or have many VM arguments. Most operating system has a limited number of characters for command line.
In the next section we will see a possible solution to fix your error.
3. Setting Default Shorten Command Line in Intellij
To solve the problem, we need to change Shorten command line option to classpath file instead of the default one set to none – java [options] className [args].
First, we need to open IntelliJ IDEA and then click on Run -> Edit Configurations:
Second, we’ll click on the Edit configuration templates:
Next, we need to select a template and then click on Modify Options:
A new menu appears, and we can select Shorten command line option:
We can then select from Shorten command line one of those options(depends on the InteliJ version you are using):
- JAR Manifest: The IDE passes a long classpath via a temporary classpath.jar (this might not work for some of the frameworks).
- classpath file: The IDE will write a long classpath into a text file (this might not work for some of the frameworks, e.g: JMock).
NOTE: In the newer versions of InteliJ you may find the classpath file replaced by @argfile (Java 9+).
Based on the error we can choose one of these options, since one of the option wouldn’t work for your error case.
Finally, we need to apply the changes, and then we can run our application.
4. Conclusion
In this quick tutorial, we explained the root cause of this error and how to Fix the “Command line is too long” error in IntelliJ IDEA by setting up the default shorten command line in the IDE configuration.