All Classes and Interfaces

Class
Description
Plugin which modifies the eclipse project file so that it will include gradle `annotationProcessor` dependencies.
 
 
 
DSL for AsMavenPlugin.
DSL for a single maven group.
Downloads a set of artifacts from a p2 repository and stuffs them into a local maven repository in the `build/p2asmaven` folder, then adds this repository to the project.
 
Determines where the manifest is written out by BndManifestPlugin.
Generates a manifest using purely bnd, and outputs it for IDE consumption.
 
Uses [`build.properties`](https://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.pde.doc.user%2Fguide%2Ftools%2Feditors%2Fmanifest_editor%2Fbuild.htm) to control a gradle build, and fixes the eclipse project classpath to include binary assets specified in `build.properties`.
 
Models the CategoryPublisher application ([eclipse docs](https://wiki.eclipse.org/Equinox/p2/Publisher#Category_Publisher).
Implementation of CmdLineTask, but helpful for implementing other things as well.
Returns the given result.
 
A task for running a series of actions, including shell commands.
Utilities for creating configuration content.
Copied on 2021-02-11 straight from https://github.com/eclipse/rt.equinox.framework/blob/7433233fbcf44fe8b82e63a10f8733767e5b3042/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/internal/launcher/Constants.java
Adds [Buildship](https://projects.eclipse.org/projects/tools.buildship).
Adding the JDT convention to your project adds the following features: - `org.eclipse.platform.ide` - `org.eclipse.jdt` - `org.eclipse.ui.views.log` You can set the installed JRE as follows: ```gradle oomphIde { jdt { installedJre { version = '1.6.0_45' installedLocation = new File('C:/jdk1.6.0_45') markDefault = true // or false executionEnvironments = ['JavaSE-1.6'] // any execution environments can be specified here.
Adds the [minimalist gradle editor](https://github.com/Nodeclipse/nodeclipse-1/tree/master/org.nodeclipse.enide.editors.gradle).
Adding the PDE convention to your project adds the following features: - `org.eclipse.platform.ide` - `org.eclipse.jdt` - `org.eclipse.pde` You can set the targetplatform as follows: ```gradle oomphIde { pde { targetplatform { it.installation '../target.maven/build' it.installation '../target.p2/build/p2asmaven/p2runnable/eclipse-deps' } } } ```
Sets the target platform.
 
This is a place for third-party modules to add their own configuration logic.
Adds [TmTerminal](https://marketplace.eclipse.org/content/tcf-terminals).
THIS CLASS IS EXPERIMENTAL AND SUBJECT TO CHANGE.
Models an eclipse utility application and all of its input state.
Models the `org.eclipse.ant.core.antRunner` application, including its `build.xml`.
 
Api for manipulating eclipse.ini, see [Eclipse docs](https://wiki.eclipse.org/Eclipse.ini) for more details.
Given a directory containing osgi jars, this class verifies that the core bundles are available, and provides an API for instantiating the OSGi runtime and accessing its BundleContext.
 
Utilities for working with eclipse internals (which should only be called from within an Eclipse instance).
Consumer which can throw an exception.
Models an Eclipse release, such as Mars SR2.
Runs the given args using a headless eclipse instance.
Utilities for getting environment variables in buildscripts.
Given a directory containing osgi jars, this class verifies that the core bundles are available, and provides an API for instantiating the OSGi runtime and accessing its BundleContext.
Plugin for launching an equinox runtime.
 
Copies a bunch of OSGi plugins into a directory so that they can be launched as an equinox application.
Defines the source jars for an eclipse launch, with lazy resolution for performance.
Launches an equinox application based on a plugin setup established by EquinoxLaunchSetupTask.
 
Creates eclipse project files which excludes the gradle build folder from Eclipse's resource indexing.
 
Specifies a policy for which bundles we will keep multiple versions of, used in PdeBuildTask.
Represents a given plugin and its input versions, and specifies the versions to use when resolving it.
 
Models the FeaturesAndBundlesPublisher application ([eclipse docs](https://wiki.eclipse.org/Equinox/p2/Publisher#Features_And_Bundles_Publisher_Application)).
Miscellaneous utilties for copying files around.
 
 
There are a few things which goomph needs to cache on the developer's machine.
 
Simple representation of a JRE
Used for adding JRE/JDK installations to an Eclipse install.
 
A listing of common IUs.
Runs an `EclipseApp` within this JVM using a folder containing a `plugins` folder with the necessary jars.
Runs an `EclipseApp` in a new JVM using a folder containing a `plugins` folder with the necessary jars.
Easy way to execute code from a Gradle plugin in a separate JVM.
Encapsulates whether something is run internally or externally.
 
 
 
Thanks to Thipor Kong for his workaround for Gradle's windows problems.
Detects the JDK folder from the gradle project, and wraps it in an API.
 
Copied on 2021-02-11 straight from https://github.com/eclipse/rt.equinox.framework/blob/7433233fbcf44fe8b82e63a10f8733767e5b3042/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/JNIBridge.java
 
Represents a mutable element, probably a collection, which can be mutated directly, or lazily using the Action mechanism.
 
Copied on 2021-02-11 straight from https://github.com/eclipse/rt.equinox.framework/blob/7433233fbcf44fe8b82e63a10f8733767e5b3042/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java - then make `void basicRun(String[] args)` into `public` - `Thread splashHandler` into `protected` - `void invokeFramework(` into `protected` - make the following `public` - `String PARENT_CLASSLOADER_EXT` - `String PARENT_CLASSLOADER_BOOT` - `String PROP_PARENT_CLASSLOADER` - `String PROP_FRAMEWORK_PARENT_CLASSLOADER`
 
Maps eclipse jars to their mavenCentral artifact ids and versions based on their official release.
Now that Eclipse is publishing artifacts to maven central, it's possible to use the valuable components of the eclipse project without getting bogged down in p2 and OSGi.
 
Deprecated.
This was helpful before SWT jars were available on maven central, but now MavenCentralPlugin is a better option.
 
Interface for the native file manager.
Runs an `EclipseApp` using a native launcher (such as eclipsec.exe).
Base class for implementing a DSL around a specific part of the IDE.
Downloads and sets up an Eclipse IDE.
 
Expresses ordering constraints on the given type.
Runs code that lives outside an OSGi container inside of it.
Client code which gets called within the OSGi runtime.
Defines data which will be passed via reflection to code within the OSGi runtime - the reflection allows us to call code for which we don't have the necessary dependencies to resolve its imports unless it is only instantiated within the OSGi container.
Models an eclipse ant task which can be run by the P2 Bootstrapper.
A declarative-style wrapper around a P2Model, appropriate for use as a DSL mixin.
Models a request for some artifacts from some p2 repositories.
An extension of EclipseApp with typed methods appropriate for p2 director.
Parses a jar file's name and version by first looking at its manifest, then its filename.
Runs PDE build on an ant file.
Runs PDE build to make an RCP application or a p2 repository.
Wraps a PDE installation for the given eclipse release.
Models the "product" part of PdeBuildTask.
Listing of common eclipse perspectives (window layouts).
In order to detect the underlying operating system and architecture, it is necessary to to read various system properties and environment variables, which breaks the Gradle configuration cache.
 
Determines where the manifest is written out by BndManifestPlugin.
Fixes an intermittent problem when generating eclipse project files where dependencies on other projects within the workspace aren't always resolved correctly within Eclipse.
 
Imports all of the given project files.
Base implementation of a Plugin which prevents double-application.
Models the repo2runnable application.
Models an eclipse resource filter.
Eclipse projects can have [resource filters](https://help.eclipse.org/neon/index.jsp?topic=%2Forg.eclipse.platform.doc.user%2Fconcepts%2Fresourcefilters.htm) which include or exclude certain files.
 
Utilities for manipulating Serializable objects.
Setup action which takes place within the Eclipse installation.
 
Helper for generating a state string.
A Convention which is setup to add a default p2 repository which can be overridden.
Maintains a registry of goomph workspaces.
Utilities for mucking with zip files.