Skip to content

Getting started as a JCrypTool Developer

Simon Leischnig edited this page Oct 9, 2020 · 67 revisions

Getting started with programming for JCrypTool

Overview of programs you will use:

  • Java is the programming language (version 11 or newer), building on top of the Eclipse Rich Client Platform (RCP).
  • Eclipse is the integrated development environment (IDE) we use.
  • Git is the version control system we use.

Both programs, Java and Eclipse, need to be installed. Git is integrated in Eclipse and has a graphical interface.

Don't worry, the whole process is almost fully automated. The only prerequisite is Java 11. If you don't have Java installed already, visit this page for instructions.

Install the Eclipse IDE for JCrypTool via Oomph:

Download the Eclipse installer, called "Oomph" -- For Windows | For OS/X | For Linux

... and start it.

  • The "simple mode" is probably where you start. Go to the advanced mode via the top right corner (or see this GIF).
    • When asked if you wish to keep the installer in a permanent location, click "No".
  • Copy this URL to your clipboard (right click → "Copy link address"). There is no need to paste it anywhere -- the installer will detect it in your clipboard.
  • In the installer, this button should be visible now, top right corner: . Click it. You should see the final configuration page now.

The installer now is almost ready but wants to know where to install things on your computer. In the bottom left corner, check the box labeled "show advanced options".

You may choose some options as to installation location. Pragmatically though, don't change anything, just try to remember the default locations to be able to find eclipse again on the second time. For this, look at the "Advanced options" checkbox. In 99% of cases, you don't need to change an option. It is especially not a good idea to change folders to something like C:\Program Files\<etc>..


Then proceed ("Next" buttons on the following pages) follow any instructions and accept all licenses. The fully configured IDE should start up some time down the road; when that happens, Oomph can be safely closed ("Finish"). After Eclipse starts up (5-10 seconds), it will continue with the automated setup; this can take quite some time. Tea time ☕ !

After the setup has completed, you can test whether JCrypTool can be started directly from the source code! In the left Navigation bar, locate the project "org.jcryptool.product" and open the file "jcryptool.product". Click the following button:

JCrypTool should now start:

(or see this Troubleshooting entry)

From here on, you can change code in all the project and see the effect via clicking that Play button (or the one in the top bar)!

You will see, JCrypTool is a very big project with many subprojects. Don't hesitate to ask for help in our gitter channel (basically a chatroom; see below).


Troubleshooting

I don't find the IDE when trying to start it up the second time / it looks different

With the default settings, your Eclipse workspace and the git repositories are installed in <Home-Directory>/JCT-Eclipse. Verify this or look for a similar location. This depends on what you put into the wizard before.

  • Start eclipse as such: <Home-Directory>/JCT-Eclipse/eclipse/eclipse (or similar).
  • If you are asked for a workspace at startup of Eclipse, try putting <Home-Directory>/JCT-Eclipse/ws or /workspace (or similar).

The "Run" button does not work directly

Maybe the run button needs a bit of starting help: If there is a warning like this:

Then click the drop-down next to the green start button in the Menu bar, select "Run Configurations...", switch to the Tab "Plugins", select the following drop-down menu entry, and then "Apply" (and "Run"):

FAQ

  • Q: How do I start JCrypTool in another language, e.g. in German?
    • A: Next to the green "Run" button, click the downward arrow and select "Run Configurations...". Then, clone the current JCT run configuration and proceed as seen in this screenshot (i.e. put a command line argument -data de for German, en for English): German launch configuration screenshot

When in doubt...