(Last updated March 25, 2018)
You will need to download and install two pieces of software: the Java compiler (known as the JDK) and a Java development environment called jGRASP. Follow these instructions:
Some users already have the JDK installed on their computers, because of other software that they use that is written in Java. If you think this applies to you, you can safely skip the JDK section of this guide, although you may find that you need to come back and complete it anyway.
We will keep this page updated with solutions to frequently-encountered issues, listed below. If you have a solution to add to the list, please contact us!
Some users who have their OS configured with a non-English primary language cannot properly see the compiler errors in jGRASP. To fix this problem, follow these steps in jGRASP.
Click "Settings" -> "Compiler Settings" -> "Workspace".
In the settings box that pops up, click the "Flags / Args" tab (in the lower row of tabs).
Then, click the black "button" under "FLAGS or ARGS" and next to "Compile".
In the text box that becomes available type in
-J-Duser.language=en and click "OK".
(Thanks to former TA Eric Spishak for this tip!)
Some Windows users who have their OS configured with a non-English primary language encounter an "unable to encode text using charset us-ascii" error when closing jGRASP. This seems to happen after opening and closing a file whose path contains non-English characters. Until this bug is fixed in jGRASP, we recommend only storing your Java files in folders with English names. Sorry about that!
Once jGRASP has seen a file with a non-English path, it will remember it, even if you‘ve renamed the folder. To make it forget about the old path and stop displaying this error message, you‘ll need to delete your jGRASP workspace and create a new default one. Before doing this, make sure you know where on your computer your Java code is saved, because jGRASP will forget which files and folders you have open.
C:\Users\YOUR_USERNAME\in Windows Explorer and delete the folder named
This will reset jGRASP back to its default settings, making it forget the old filename.