Package ghidra

# Class GhidraRun

java.lang.Object
ghidra.GhidraRun

All Implemented Interfaces:
  `GhidraLaunchable`

public class GhidraRun extends Object implements GhidraLaunchable
Main Ghidra application class. Creates the .ghidra folder that contains the user preferences and tools if it does not exist. Initializes JavaHelp and attempts to restore the last opened project.

A list of classes for plugins, data types, and language providers is maintained so that a search of the classpath is not done every time Ghidra is run. The list is maintained in the GhidraClasses.xml file in the user's .ghidra folder. A search of the classpath is done if the (1) GhidraClasses.xml file is not found, (2) the classpath is different from when the last time Ghidra was run, (3) a class in the file was not found, or (4) a modification date specified in the classes file for a jar file is older than the actual jar file's modification date.

Note: The Plugin path is a user preference that indicates locations for where classes for plugins and data types should be searched; the Plugin path can include jar files just like a classpath. The Plugin path can be changed by using the Edit Plugin Path dialog, displayed from the Edit->Edit Plugin Path... menu option on the main Ghidra project window.

See Also:
  - `GhidraLauncher`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `GhidraRun()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `launch(GhidraApplicationLayout layout, String[] args)`
  Launches the launchable.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### GhidraRun

    public GhidraRun()

- ## Method Details

  - ### launch

    public void launch(GhidraApplicationLayout layout, String[] args)
    Description copied from interface: `GhidraLaunchable`
    Launches the launchable.
    Specified by:
      `launch` in interface `GhidraLaunchable`
    Parameters:
      `layout` - The application layout to use for the launch.
      `args` - The arguments passed through by the `GhidraLauncher`.