BlueJ is an Integrated Development Environment (IDE) written in Java, designed for the teaching of java for beginners.
From version 3.14, BlueJ fully supports the Raspberry Pi, a credit card sized single board computer aimed at promoting the teaching of basic computer programming in schools. BlueJ is a Java development environment that allows development as well as program execution on the Pi.
BlueJ provides full access to hardware attached to the Raspberry Pi via the open source Pi4J library, from the the familiar Java SE language, including the new Java 8.
BlueJ is now part of the Raspbian distribution, and it is already installed by default on the current Rasbperry Pi image.
However, If you don't have BlueJ already installed, just run this command in a terminal on the Raspberry Pi:
sudo apt-get update && sudo apt-get install bluej
BlueJ already includes Pi4J, which is an object-oriented API for Java to access the GPIOs of the Raspberry Pi.
There is no need to install the JDK first, as it is included on the default Raspberry Pi image.
As basis for your own projects, all of the above I/O helper classes, plus helper classes to use analog inputs: using the MCP3008, and another one using a just a capacitor (described here) are avaliable in a single BlueJ project for download.
All of the normal BlueJ functionality also works on the Raspberry Pi, however, although BlueJ runs as a regular user, your code runs as root (to support access to the hardware). In normal use, you will not notice the difference, but if you write code which e.g. delete system files, then you can cause system problems on the Pi.
Please see support page.