waves_logo Docs
  • Node Owner Guide
    Node Owner Guide
  • Install Waves Node
    • Deploy Node in Docker
      Deploy Node in Docker
    • Install Node on Ubuntu
      Install Node on Ubuntu
    • Install Node on macOS
      Install Node on macOS
    • Install Node on Windows
      Install Node on Windows
    • Install from Source (Building SBT)
      Install from Source (Building SBT)
    Install Waves Node
  • Synchronize Waves Blockchain
    • Import/Export Blockchain
      Import/Export Blockchain
    • Download the Latest Blockchain
      Download the Latest Blockchain
    • Rollback Waves Node
      Rollback Waves Node
    Synchronize Waves Blockchain
  • Generate Blocks
    Generate Blocks
  • Upgrade Waves Node
    Upgrade Waves Node
  • Node Configuration
    Node Configuration
  • Logging Configuration
    Logging Configuration
  • Node Wallet
    Node Wallet
  • Features
    • Activation protocol
      Activation protocol
    Features
  • Custom Blockchain
    Custom Blockchain
  • Node REST API
    • API Key
      API Key
    • Working with Transactions
      Working with Transactions
    • Numeric Fields Format
      Numeric Fields Format
    • Pagination
      Pagination
    • CORS
      CORS
    • API Limitations of Pool of Public Nodes
      API Limitations of Pool of Public Nodes
    • Slow Requests
      Slow Requests
    • Response Codes and Errors
      Response Codes and Errors
    Node REST API
  • Extensions
    • gRPC Server
      gRPC Server
    • Blockchain Updates
      Blockchain Updates
    Extensions
  • Troubleshooting
    • Block Generation FAQ
      Block Generation FAQ
    Troubleshooting
  • Node Go
    Node Go
      • English
      • Русский
      On this page
        • 1. Setup the Environment
        • 2. Obtaining Source Codes
        • 3. Running Unit Tests
        • 4. Building Packages
        • 5. Installing DEB Package
        • 6. Running Fat JAR
      waves_logo Docs

          # Install from Source (Building SBT)

          This installation method implicates building DEB or JAR package from Waves git source code files, then running the node from your own DEB or JAR package. The method can be useful for blockchain developers, who want to customize the node files before installation as well as for the advanced node owners, who want check that the source code files of the running node are 100% safe to run.

          💡 For OSX - homebrew is preferable choice. You can install java with brew cask install java and sbt with brew install sbt@1. Build/Test steps are common for any OS (but you should use \ instead of / in Windows).

          To build and test your Waves Node, follow the steps:

          # 1. Setup the Environment

          # Installing Java

          Install Java with the following command:

          sudo apt-get update
          sudo apt-get install default-jre default-jdk
          

          Note: To increase memory of Linux-based JVM (Java Virtual Machine) in the ~/.bashrc file add the following:

          SBT_OPTS="-XX:MaxJavaStackTraceDepth=5000 -Xmx2536M -XX:+CMSClassUnloadingEnabled -Xss2M"
          

          # Installing SBT

          Please follow the SBT installation instructions .

          # 2. Obtaining Source Codes

          git clone https://github.com/wavesplatform/Waves.git
          cd Waves
          

          # 3. Running Unit Tests

          sbt test
          

          # 4. Building Packages

          • # Mainnet

          sbt packageAll
          
          • # Testnet

          sbt -Dnetwork=testnet packageAll
          

          # 5. Installing DEB Package

          Replace {folder} with actual folder name where the DEB package is located. Replace {*} with actual file name:

          sudo dpkg -i {folder}/*.deb
          

          # 6. Running Fat JAR

          Replace {folder} with actual folder name where the JAR package is located. Replace {*} with actual file name (it should have "all"-word):

          java -jar {folder}/*.jar path/to/config/file
          
          Install Node on Windows
          Synchronize Waves Blockchain
          Install Node on Windows
          Synchronize Waves Blockchain