Closed frafra closed 2 years ago
Hi @frafra ,
You're right :) - NPM is now required in order to run the top-level build
I think the guide is two separate guides, jobson
and jobson-ui
, effectively glued together (they used to be separate projects). Later versions then put everything into one super-repo (which, confusingly, is called jobson
, because it didn't make sense to break it into something like jobson-all
).
If I ever get any time for jobson, I'll try to address this ticket (it's a basic doc edit).
To address your concern of building various components individually, I believe that's already available via the mvn --projects
feature (google: "how to build a specific maven submodule"). In this case, it's probably something like mvn package --projects jobson
. I'll have to double-check (I now mostly only develop C++ and don't have the toolchain at-hand).
The updated documentation now lumps everything together, with an itemized list. The content is:
Depending on what you want to build, you’ll need (on Ubuntu):
jobson
: maven
, openjdk-8-jdk
jobson-deb
: build-essential
, ruby
, ruby-bundler
jobson-docker
: docker
jobson-docs
: python3
, python3-pip
jobson-ui
: nodejs
, npm
Overall, installing all dependencies on a fresh machine looks something like:
apt install build-essential maven openjdk-8-jdk ruby ruby-bundler nodejs npm python3 python3-pip
gem install fpm # used to make .deb packages
pip3 install -r jobson-docs/requirements.txt
# build jobson
mvn package -P release
It'll end up in the next (probably, small) maintenance release
The documentation says that is enough to have maven and openjdk to build the software (without the documentation), but npm is needed too.
It would be nice to be able to build the various components individually (maybe there is already, but I am failing to see it).