Getting Started
Docker
$ docker run -p 8102:8102 eclipsejifa/jifa
jifa.sh
# http://localhost:8102
$ curl -fsSL https://raw.githubusercontent.com/eclipse/jifa/main/jifa.sh | bash
# Change the port
$ curl -fsSL https://raw.githubusercontent.com/eclipse/jifa/main/jifa.sh | bash -s -- -p <port>
# Analyze local files
$ curl -fsSL https://raw.githubusercontent.com/eclipse/jifa/main/jifa.sh | bash -s -- <file1 path> <file2 path> ...
# Add JVM Options
$ curl -fsSL https://raw.githubusercontent.com/eclipse/jifa/main/jifa.sh | bash -s -- --jvm-options "<JVM options>"
Tip
jifa.sh encapsulates docker
command. If you prefer to use the docker
directly and also want to modify the server port or analyze local files, please refer to it.
jifa-jpackage.{sh | bat}
Use the jpackage
command to package it into a binary installation package for easy local use (standalone mode).
Releases
Platform support: linux/amd64, linux/arm64. For other platforms, please build from source code.
- Download the latest release from here.
unzip jifa.zip
./jifa/bin/jifa
From Source
Prerequisites
- JDK 17+
- Node.js 18+
Run
# run as standalone worker
$ ./gradlew runStandaloneWorker
# run as master
$ ./gradlew runMaster
# run as static worker
$ ./gradlew runStaticWorker
You can also run these tasks in IDE.
For the introduction of roles, please refer to deployment.
Frontend
Frontend code will be automatically bundled into the server, but it won't be automatically re-bundled after changes. To facilitate the development and debugging of the frontend code, you can run a dev server with the following command:
$ cd frontend
$ npm ci
# http://localhost:8089
$ npm run dev
Build
$ ./gradlew build
# skip test
$ ./gradlew build -x test
The output can be found in ./server/build/distributions
.
Docker Image
Use Dockerfile in the project root directory.