I usually input command line arguments in Eclipse via run configuration. But I don't know how do achieve the same task in IntelliJ IDEA.
19 Answers
Windows, Linux, some Macs:
ALT+SHIFT+F10, Right, E, Enter, Tab, enter your command line parameters, Enter. ;-)
Mac with "OS X 10.5" key schema:
CTRL+ALT+R, Right, E, Enter, Tab, enter your command line parameters, Enter.
-
Same thing but start with CTRL+ALT+D for debug configuration on OS X 10.5+ schema. Commented Jul 18, 2016 at 18:16
-
What if I wanna use a redirect symbol? For example, $ javac Filter WhiteList.txt < TotalList.txt, how can I run this in Intellij just like command lines? Commented Sep 9, 2016 at 1:26
-
@RossoTheMan I mean the key on the keyboard that's usually located between W and R.– NowakerCommented Nov 3, 2020 at 19:42
-
LOL. Makes emacs key cobos look easy to remember, in comparison. Commented Jul 5 at 18:02
There's an "edit configurations" item on the Run menu, and on the pull-down to the left of the two green "run" and "debug" arrows on the toolbar. In that panel, you create a configuration with the "+" button in the top left, and then you can choose the Class containing main(), add VM parameters and command-line args, specify the working directory and any environment variables.
There are other options there as well: code coverage, logging, build, JRE, etc.
-
2This is how I run in commandline
$gradle cucumber -Ptags=@Cal -Penv=dev1
. I entered vales underEdit Config.. > Program Arguments
as--tags "@Cal" "env=dev1"
. I noticed@Cal
worked andenv=dev1
doesn't work.– ShabarCommented May 31, 2014 at 4:49 -
2@PanCrit In my console when I do
java MyClass < someFileName.txt
it works, but when I add< someFileName.txt
to program arguments in intelliJ, it does returnError: Could not find or load main class <
Any idea how to solve it? Commented Aug 26, 2015 at 11:50 -
@maytham-ɯɐɥʇʎɐɯ, I wouldn't expect "< filename" to work in intelliJ, since that's explicitly shell syntax for a redirect to stdIn. IntelliJ would only be expecting to handle arguments that the program itself knows how to interpret. Is there any chance the program takes the name of input files as a parameter? That would be supported.– PanCritCommented Aug 29, 2021 at 17:31
-
Note that the main menu is hidden by default in the 2024 version of IDEA. 'Edit configuration' is actually accessible from two places now, but alas both are hidden in some fashion: the main menu (which you can access on left via the quad-hamburger or Alt+\) and the top toolbar on the right with the run & debug [green] icons. In the latter [toolbar] 'edit configuration' is hidden under the dropdown mini-menu with three vertical dots. Commented Jul 6 at 7:52
-
Ed's answer below cover how this looks in the 2024 version. Commented Jul 6 at 7:59
If you are using intellij go to Run > Edit Configurations
menu setting. A dialog box will appear. Now you can add arguments to the Program arguments
input field.
Example I have a class Test:
Then. Go to config to run class Test:
Step 1: Add Application
Step 2:
You can input arguments in the Program Arguments textbox.
-
TIL that we can use variables in program arguments of run configuration: youtrack.jetbrains.com/issue/IDEA-74031 It is possible for example to use the current file path as an argument or just make a prompt.– IsinlorCommented Feb 2, 2019 at 10:33
We cannot go into Terminal and give in the good old java Classname arg1 arg2 arg3
We'll have to edit the run configuration.
Step 1 : Take the Run menu
Step 2 : Select Edit Configurations
Step 3 : Fill the Program arguments field
After that, the arguments will be inserted to the end of the command that IntelliJ creates whenever you run the program :)
You separate multiple program arguments with spaces. (this was not obvious to me)
Program arguments:Julia 52 Actress
Just left click on your current configuration (mine is Main) and select Edit Configurations,
then in the input field Program arguments enter your values as you would in the console, click OK.
-
if the "Program arguments" is not shown like in the picture, click on the "Modify options" and select "Program arguments" Commented Oct 3, 2023 at 9:20
-
This is more or less how it looks in the 2024 version too. There are two ways to get to that dialog actually. The mini-menu you've shown which is now (2024) shown as three vertical dots or the Run menu in the main menu accessible via the four-line hamburger. (I guess they like double whoppers at IntelliJ, LOL.) Actually there are 3 ways. There's also the right-click menu as shown in user 452866's answer below that I hadn't noticed. Commented Jul 6 at 8:01
On a MacBook Air with "OSX 10.11.3":
- ctrl + alt + r
- e
- Enter
- Program arguments: Write your command line parameters (space between each item if you have more than one argument)
- Enter
-
1
Do this steps :-
Go to Run - Edit Configuration -> Application (on the left of the panel ) -> select the scala application that u want to run -> program argument
I am using IDEA 2021.3.2 exactly, and I run across a simple solution: Just right click in your code area:
Then choose Modify Run Configuration:
Input your command line parameters there.
-
Not the most obvious place to look for this, but good that it's there also... I guess. (Although it does clutter the right-click menu with stuff that's less... contextual.) Commented Jul 6 at 8:06
maytham-ɯɐɥıλɐɯ, you can use this code to simulate input of file:
System.setIn(new FileInputStream("FILE_NAME"));
Or send file name as parameter and then put it into FileInputStream:
System.setIn(new FileInputStream(args[0]));
Main Program -> Run -> Edit Configurations -> Inside Configuration there is Program arguments text box. add space separated argument in the text box. Then you can read those arguments in the args array (public static void main(String[] args))
As @EastOcean said, We can add it by choosing Run/Debug configurations option. In my case, I have to set configuration for junit. So on clicking Edit configurations option, a pop up window is displayed. Then followed the below steps:
- Click on + icon
- Choose junit from the list
- Then we can see Configuration tab in the right hand side
- Select test kind, in my case Its a Class
- Next step browse through the location of the class which needs to be executed/run
- Next to that, choose VM Option, click on expand arrow icons
- Set required arguments for an example (-Durl="http://test.com/home" -Dsourcename="API" -Dbrowsername="chrome")
- Set jre path.
Save and run.
Thank you.
In IntelliJ, if you want to pass args parameters to the main method.
go to-> edit configurations
program arguments: 5 10 25
you need to pass the arguments through space separated and click apply and save.
now run the program if you print
System.out.println(args[0]);
System.out.println(args[1]);
System.out.println(args[2]);
Out put is 5 10 25
I'm adding an updated answer to this question since IntelliJ IDEA 2021.
Select Edit Configuration from the toolbar (or under the Run menu): Picture of new location of edit configuration box
You now have to click on the Modify Options menu (Alt + M) to the left of where it says Build and Run, and above the drop down menu that lets you select the version of Java (or other language) that your using.
After you click Modify Options the first box you will see--titled Operating System--will have a line that says "Redirect input". Click on that to add the box for input redirection. Close Modify Options.
Under Build and Run, the third box down is for command line input.
That's all there is to it.
To do this in IntelliJ IDEA 2020.2.3 (Community edition) on Windows 10:
- ALT-SHIFT-F10
- 0
- [TAB] 7 times
Updated for 11/2020.
It's strange that no one wrote about simply copying "Run" command output into your terminal and adding the arguments.
For example, when I run "Run" command in my Intellij IDEA the output is something like
/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -javaagent:/opt/idea-IC-211.7142.45/lib/idea_rt.jar=32887:/opt/idea-IC-211.7142.45/bin -Dfile.encoding=UTF-8 -classpath /home/aliaksei/Projects/Training/Java/firstTry/out/production/firstTry MyClass
Process finished with exit code 0
And then I simply copy the first line and enter my arguments like:
<THIS_HUGE_LINE> foo bar
Note: remember to build the project before running the command in terminal. Either click "Build" or "Run" first. You can find these options, for example, at the bottom: link to the screenshot
Create a script to run from the command line! On Linux or Mac:
- Run in the usual way (with mouse or Shift-F10 or whatever)
- In the Run window, copy the execution command, it's the first line.
- In the terminal window, type:
cat >run.sh
#!/usr/bin/bash
{paste command line} "$@"
^D
chmod +x run.sh
Now you can just switch into the terminal and type:
./run.sh {arg1} {arg2}
-37
score on that, LOL).