Nuts Package Manager
Nuts is a free and open source Package Manager for Java. Think of it as Javascript’s npm or Python’s Pip for the Java ecosystem.
It helps deferring dependency resolution to runtime and as a result, you only need to share a simple application with no dependencies; they will be resolved on user’s machine.
Though, it is important to note that no special building is required. Standard maven based jars are supported out of the box.
You install an application with nuts install <my-app>
and you run it with nuts <my-app>
.
Installation (for testing, rolling version)
The very same procedure applies whether you already have an existing version of nuts installed or not.
If you want to install (or update from existing rolling version) you just need to do the following.
Please that nuts rolling version (which is the most recent version) is quite stable and you can use it for personal usage, for
development or for testing but we recommend you consider official versions for production systems.
First you need to download nuts.jar
1 | wget http://thevpc.net/nuts.jar -O nuts.jar |
Then you must run, in a terminal, the following command. This will install or update nuts bootstrap binaries.
1 | java -jar nuts.jar -r dev -N -y |
That’s it, now you must relaunch the terminal window (close the terminal and start it again).
The follwing command should show you the actual version
1 | nuts -version |
Troubleshooting
The installation should run smoothly. However, if you encounter an unexpected exception, more likely you need to run the following.
This will clear the cache and give you more insights on the error as well
1 | java -jar nuts.jar -r dev -zNy --verbose |
Installation for production
Using Nuts for production requires an official central deployed nuts package.
wget https://repo1.maven.org/maven2/net/thevpc/nuts/nuts/0.8.0/nuts-0.8.0.jar
java -jar nuts-0.8.0.jar -zyN
More information is available at https://thevpc.github.io/nuts/
Useful Links
nuts official web site is https://thevpc.github.io/nuts/
nuts GITHUB repository is available at https://github.com/thevpc/nuts