There are three ways to run Electric:

- Run from the web. This is the easiest way to go. To do this, download the Java Web Start file:
  `http://java.net/projects/electric/downloads/download/electric.jnlp`
  This is a small file with links to the Electric. When run for the first time, it will download the additional files needed to run Electric. After that, it will start quickly because Electric is now on your machine. When new releases of Electric are made available, there will again be a delay as they are downloaded.
- Download the JAR file from GNU. This is discussed further below.
- Build Electric from source code. This is discussed in Section 1-4-1.

Downloading the Electric JAR file is explained here. Electric is written in the Java programming language and so the JAR file is typically called "electric-version.jar" where version is 8.09, 8.10, 9.00, 9.01, etc. There are two variations on the JAR file: with or without source code (the version without source code has the word "Binary" in its name). Either of these files can run Electric, but the one with source code is larger because it also has all of the Java code.

Electric requires OpenJDK, Apache Harmony, or Oracle Java version 1.6. It is developed with Oracle Java, so if you run into problems with other versions, try installing Java 1.6 or later from Oracle.

Running Electric varies with the different platforms. Most systems also allow you to double-click on the JAR file. If double-clicking doesn't work, try running it from the command-line by typing either:
`java -jar electric-version.jar`
or:
`java -classpath electric-version.jar com.sun.electric.Launcher`

There are a number of options that can be given at the end of the command line:

- -mdi force a multiple document interface style (where Electric is one big window with smaller edit windows in it). This is the default interface on Windows.
- -sdi force a single document interface style (where each Electric window is separate). This is the default interface on UNIX/GNU-Linux and the Macintosh. Note that the MDI/SDI settings can also be made from the Display Control Preferences (see Section 4-3).
- -s script run the script file through the Bean Shell. If the script is "-" then the script is read from the standard input.
- -batch run in batch mode (no windows or other user interface are shown; batch mode implies 'no GUI', and nothing more).
- -version provides full version information including the build date.
- -v provides brief version information.
- -NOMINMEM ignores minimum memory requirements when starting the JVM.
- -help prints a list of available command options.

#### Memory Control

One problem with Java is that the Java Virtual Machine has a memory limit. This limit prevents programs from growing too large. However, it prevents large circuits from being edited.

If Electric runs out of memory, you can request more. To do this, use the General Preferences (in menu File / Preferences..., "General" section, "General" tab). The "Memory" section has two memory limit fields, for Maximum memory and Maximum permanent space. Changes to these values take effect when you next run Electric.

The Maximum memory size is the most important because increasing it will offer much more circuitry capacity. Note that 32-bit JVMs can only grow so far. On 32-bit Windows systems you should not set it above 1500 (1.5 Gigabytes). On 32-bit Linux or Macintosh system, you should not set it above 3600 (3.6 Gigabytes).

Permanent space is an additional section of memory that may need to be increased. For very large chips, a value of 200 or more may enhance performance.