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.
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.
DSL for
OomphIdePlugin.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.
DSL for
ResourceFiltersPlugin.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.
MavenCentralPluginis a better option.