Package ghidra

Class GhidraTestApplicationLayout


  • public class GhidraTestApplicationLayout
    extends GhidraApplicationLayout
    The Ghidra test application layout defines the customizable elements of the Ghidra application's directory structure when running a test.

    This layout exists because tests often need to provide their own user settings directory, rather than using Ghidra's default.

    • Constructor Detail

      • GhidraTestApplicationLayout

        public GhidraTestApplicationLayout​(java.io.File userSettingsDir)
                                    throws java.io.FileNotFoundException,
                                           java.io.IOException
        Constructs a new Ghidra application layout object with the provided user settings directory.

        This layout is useful when running Ghidra tests.

        Parameters:
        userSettingsDir - The custom user settings directory to use.
        Throws:
        java.io.FileNotFoundException - if there was a problem getting a user directory.
        java.io.IOException - if there was a problem getting the application properties.
    • Method Detail

      • findExtensionInstallationDirectories

        protected java.util.List<ResourceFile> findExtensionInstallationDirectories()
        Description copied from class: GhidraApplicationLayout
        Returns a prioritized list of directories where Ghidra extensions are installed. These should be at the following locations:
        • [user settings dir]/Extensions
        • [application install dir]/Ghidra/Extensions
        • ghidra/Ghidra/Extensions (development mode)
        Overrides:
        findExtensionInstallationDirectories in class GhidraApplicationLayout
        Returns:
        the install folder, or null if can't be determined