# Test environment:

Operating system: macOS Mojave 10.14.2 8G 256G SSD JDK 1.8 (Recommend using Oracle JDK version)

# Recommended configuration:

  • CPU: 16 cores

  • Memory: 32G

  • Bandwidth: 100M

  • SSD: 500G or more

# Deployment guide

## 1. Obtain FullNode.jar, Soliditynode.jar through compiling or release

### a. Compile by downloading the source code

1). Create the code directory



2). Download java tron ​​source code



3). Compile the java-tron project



### b. Get the latest version of the jar package directly through release page

[https://github.com/tronprotocol/java-tron/releases](🔗).

You need to download `FullNode.jar` and `SolidityNode.jar`.

#### Binary verification

Note

All released files after 3.7 will provide signatures signed by the Tron Account: `TKeAcHxgErbVXrG3N3TZiSV6AT566BHTj2`.

You can verify the signature by tronweb.



Suppose we got a `FullNode.jar` with a SHA256 hash `2fca93b09da4ac62641e03838e77fce99b4711ddb0c09aa91656c80fc9556d2e`, and a Tron signature `21435e32131feb6d00ba8048df04e112e02569ec851064d8ecad2d4dd5da44b7628ddce16823dadfff6fd683fc58cee74964970621a845ee459e2c96a750de551b`.

To verify the integrity of the released file:



## 2. Configuration file

[main_net_config.conf](🔗)

## 3. Deploy Node

### a. Start the node

Warning

Starting the node to synchronize data is slow. After downloading the recent data directly through the backup database, decompress it to the output-directory directory under the Tron project, and then synchronize. The backup database address can be clicked [Backup Database] (https://backup.trongrid.io/).



To start the super representative node, the command is as follows:



After the node is started, logs and output-directory will be generated on the sibling directory of java-tron.jar

  • logs: node log files

  • output-directory: node data storage directory

Command-line parameter description:

--witness: enable the witness function --log-config: Specify the log configuration file path, i.e .: --log-config logback.xml -c: Specify the configuration file path, i.e.: -c config.conf.

The use of the log file:

You can modify the level of the module to control the output of the log. The default level of each module is INFO. For example, printing only the information above the warning level of the network module, you can modify it as follows.



Note

  • Fullnode already supports the query of solidified blocks. By default, the solidity data can be queried through the walletsolidty / interface of port 8091, so there is no need to build a solidity node.

  • You can use the latest data for synchronization. <https://backups.trongrid.io/>

### b. Stop the node

Use `kill -15` to close the fullnode.jar or soliditynode.jar process.