-
Notifications
You must be signed in to change notification settings - Fork 43
Getting started as a JCrypTool Developer
Overview of programs you will use:
- Java is the programming language (version 17 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 17. If you don't have Java installed already, install the Adoptium JRE or SDK in version 17.
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
- the "Installation folder name" (e.g. JCT-Eclipse)
- the "Root install folder" (the location where JCT-Eclipse would be created).
- the "JCT git root directory". If it is empty,
C:\Users\<Your-User>\git
is a fine choice. (where the JCrypTool git repositories are cloned into. If you wish to use existing git clones, choose their containing folders. Their "develop" branches may get checked out in the process.)
The safest approach would be not to change more variables than indicated here, but advanced programmers can experiment with the other options.
It not a good idea to change folders to something like C:\Program Files\<etc>
. Rather, let everything install itself into your Home directory, e.g. C:\Users\<Your-User>\...
.
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:
From here on, you can change code in all the project and see the effect via clicking that 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).
- With the default settings, your Eclipse workspace and the git repositories are installed in
~/eclipse-inst/{git,ws}
. Under Windows, that would beC:\Users\<Your User>\eclipse-inst\{git,ws}
. -
Errors when compiling JCrypTool/Clicking the run button: Sometimes, Eclipse fails to import every last one of the git projects (suspected hiccup because of the ~200 single plugin projects to be imported). This could be the reason for the errors.
- Workaround: go to the "Git repositories" view, right click both repositories, and complete "Import projects..." manually. if there are no projects left to be imported, the dialog will tell you so.
- You can reach us most of the time in our gitter channel: https://gitter.im/dschadow/jcryptool . This should be the quickest way to get help
- To report bugs with this process, you could also open an issue here: https://github.com/jcryptool/core/issues . Screenshots can be copy-pasted and are welcome.
Need help? Please visit the public JCT Chatroom or open a new Issue and ask your question. We'll be happy to assist you!