Prerequisites
Java Development
- Java 11 or later
- Maven for dependency management
Go Development
- Go 1.7 or later
Router Installation
The router is written in Go and can be used either as a precompiled binary or compiled from source.Option 1: Use Precompiled Binary
Precompiled binaries are available for Windows, Linux, and MacOS in the
Router directory.- Linux
- MacOS
- Windows
Option 2: Compile from Source
If you prefer to build from source or need a custom build:This will create a
router executable in the current directory.Make sure you have Go 1.7 or later installed. You can verify with
go version.Client Installation
The HTTP client (httpc) is a Java-based application that requires Maven for building.
Install Dependencies
The client uses the following dependencies:
jopt-simple(5.0.2) - for command-line option parsingapache-ant(1.10.12) - for command-line utilities
Maven will automatically download all required dependencies specified in
pom.xml.Package the Client (Optional)
To create an executable JAR file:This creates a JAR file in the
target directory.Server Installation
The HTTP file server (httpfs) is also written in Java and follows a similar build process.
System Requirements
Java Components
- RAM: 512MB minimum
- Disk Space: 100MB for dependencies
- Java Version: 11 or later
- Maven Version: 3.6 or later
Go Router
- RAM: 256MB minimum
- Disk Space: 10MB
- Go Version: 1.7 or later
Troubleshooting
Maven build fails with dependency errors
Maven build fails with dependency errors
Try clearing your Maven cache and rebuilding:
Java version incompatibility
Java version incompatibility
Ensure you’re using Java 11 or later:If you have multiple Java versions, set
JAVA_HOME to point to Java 11+:Go build fails
Go build fails
Make sure you have Go 1.7 or later installed:If you need to update Go, download the latest version from golang.org.
Router binary permission denied
Router binary permission denied
On Linux/MacOS, ensure the router binary has execute permissions:
Next Steps
Client Usage
Learn how to use the httpc client
Server Setup
Set up and run the file server
Router Configuration
Configure the router for testing