Fire up multiple routers in the same VM, all with their own RouterContext
(and all that entails). In addition, this creates a root I2PAppContext for
any objects not booted through one of the RouterContexts. Each of these
contexts are configured through a simple properties file (where the name=value
contained in them are used for the context's getProperty(name)).
Usage:
MultiRouter numberRouters
Each routerContext specified is used to boot up a single router. It is HIGHLY
recommended that those context files contain a few base env properties:
- loggerFilenameOverride=rN/logs/log-router-#.txt
- router.configLocation=rN/router.config
(where "rN" is an instance number, such as r0 or r9).
Optionally, i2p.vmCommSystem=true can be enabled.
i2p.vmCommSystem=true tells the router to use an in-VM comm system for sending
messages back and forth between routers (see net.i2p.transport.VMCommSystem).
However, the default comm system implementation is usually preferred since
enabling the VMCommSystem will bypass UDP and TCP, and therefore will not
provide a test bed for many important I2P systems.
To make the router console work, either run from a directory containing
lib/, webapps/, docs/, etc., or point i2p.dir.base to a directory containing the
above.
The multirouter waits until all of the routers are shut down (which none will
do on their own, so as before, you'll want to kill the proc or ^C it).