This is the source code of Angry IP Scanner, licensed with GPL v2. Official site
The code is written mostly in Java (currently, source level 11). SWT library from Eclipse project is used for GUI that provides native components for each supported platform.
The project runs on Linux, Windows and macOS.
Helping / Contributing
As there are millions of different networks, configurations and devices, please help with submitting a Pull Request if something
doesn't work as you expect (especially macOS users). Any problem is easy to fix if you have an environment to reproduce it
For that, download Intellij IDEA community edition and open the cloned project. Then, you can run Angry IP Scanner in Debug mode and put a breakpoint into the desired Fetcher class.
Building
Use Gradle for building a package for your desired platform:
./gradlew
or make
in the project dir for the list of available targets.
./gradlew current
would build the app for your current platform
The resulting binaries will be put into the build/libs
directory.
Run jar files with java -jar <jar-file>
.
Deb and rpm packages can be built only on Linux (tested on Ubuntu). Windows installer can be built on Windows only.
./gradlew all
will build packages for all OS (tested on Ubuntu only, see dependencies below).
Dependencies
On Ubuntu install the following packages:
sudo apt install openjdk-11-jdk rpm fakeroot
Install OpenJDK on other platforms as you usually do it.