Package Name | Comment |
gui.ruby.debugger | |
org.netbeans.api.ruby.platform | |
org.netbeans.modules.refactoring.ruby | |
org.netbeans.modules.refactoring.ruby.api | |
org.netbeans.modules.refactoring.ruby.api.ui | |
org.netbeans.modules.refactoring.ruby.plugins | |
org.netbeans.modules.refactoring.ruby.spi.ui | |
org.netbeans.modules.refactoring.ruby.ui | |
org.netbeans.modules.refactoring.ruby.ui.tree | |
org.netbeans.modules.ruby | |
org.netbeans.modules.ruby.api.project.rake |
Ways of getting information about Ant-based projects useful from other projects.
An {@link org.netbeans.modules.ruby.api.project.rake.RakeArtifact} is a representation of a
build product created from a (somehow Ant-based) project. Rather than relying on
details of how another project arranges its builds, a parent project can use
{@link org.netbeans.modules.ruby.api.project.rake.RakeArtifactQuery} to find Ant artifacts from
another project (or, perhaps, arbitrary source not formally contained in a
project). Using artifact information it is possible to tell what build product
(file or directory) will be created and what general sort it is (e.g. JAR vs.
Javadoc); which Ant script and target to run to create that build product; and
how to request that it be cleaned. This information suffices to create an Ant
build script in the parent project that can run sub-builds.
|
org.netbeans.modules.ruby.debugger | |
org.netbeans.modules.ruby.debugger.breakpoints | |
org.netbeans.modules.ruby.debugger.breakpoints.ui | |
org.netbeans.modules.ruby.debugger.model | |
org.netbeans.modules.ruby.debugger.ui | |
org.netbeans.modules.ruby.elements | |
org.netbeans.modules.ruby.hints | |
org.netbeans.modules.ruby.hints.infrastructure | |
org.netbeans.modules.ruby.hints.introduce | |
org.netbeans.modules.ruby.hints.options | |
org.netbeans.modules.ruby.hints.spi | |
org.netbeans.modules.ruby.javaint | |
org.netbeans.modules.ruby.lexer | |
org.netbeans.modules.ruby.modules.project.rake | |
org.netbeans.modules.ruby.options | |
org.netbeans.modules.ruby.platform | |
org.netbeans.modules.ruby.platform.execution | |
org.netbeans.modules.ruby.platform.gems | |
org.netbeans.modules.ruby.platform.spi | |
org.netbeans.modules.ruby.railsprojects | |
org.netbeans.modules.ruby.railsprojects.classpath | |
org.netbeans.modules.ruby.railsprojects.database | |
org.netbeans.modules.ruby.railsprojects.plugins | |
org.netbeans.modules.ruby.railsprojects.queries | |
org.netbeans.modules.ruby.railsprojects.server | |
org.netbeans.modules.ruby.railsprojects.server.nodes | |
org.netbeans.modules.ruby.railsprojects.server.spi | |
org.netbeans.modules.ruby.railsprojects.ui | |
org.netbeans.modules.ruby.railsprojects.ui.customizer | |
org.netbeans.modules.ruby.railsprojects.ui.wizards | |
org.netbeans.modules.ruby.rhtml | |
org.netbeans.modules.ruby.rhtml.editor | |
org.netbeans.modules.ruby.rhtml.editor.completion | |
org.netbeans.modules.ruby.rhtml.lexer | |
org.netbeans.modules.ruby.rhtml.lexer.api | |
org.netbeans.modules.ruby.rhtml.loaders | |
org.netbeans.modules.ruby.rubyproject | |
org.netbeans.modules.ruby.rubyproject.classpath | |
org.netbeans.modules.ruby.rubyproject.queries | |
org.netbeans.modules.ruby.rubyproject.templates | |
org.netbeans.modules.ruby.rubyproject.ui | |
org.netbeans.modules.ruby.rubyproject.ui.customizer | |
org.netbeans.modules.ruby.rubyproject.ui.wizards | |
org.netbeans.modules.ruby.samples.depot | |
org.netbeans.modules.ruby.spi.project.rake |
Pluggable implementations of inter-project Ant dependencies.
An {@link org.netbeans.modules.ruby.api.project.rake.RakeArtifact} can be used to represent
a build product of a sub-project, typically used as a dependency in a parent
project. {@link org.netbeans.modules.ruby.spi.project.rake.RakeArtifactProvider} can be used to
enumerate artifacts (i.e. targets creating some files) which are recommended for
export to parent projects.
|
org.netbeans.modules.ruby.spi.project.support.rake |
Principal package for implementing typical Ant-based projects.
A typical project based on Ant follows a standard pattern of having a project
folder containing:
build.xml
A top-level editable build script.
- various folders such as
src
Development files.
- various folders such as
build
Build products. Not sharable in a VCS.
nbproject/build-impl.xml
Main logic for the build; regenerated from nbproject/project.xml
but sharable.
nbproject/project.xml
General project metadata, including a declaration of the type of project,
its name, some structural parameters relating to the build, a list of
subprojects, etc.
nbproject/project.properties
Sharable build configuration for the project.
nbproject/private/private.xml
Per-user (or per-checkout) project metadata, if any.
nbproject/private/private.properties
Per-user build configuration for the project.
nbproject/private/cache
Cache directory containing disposable files that might speed up various
operations.
Note that since Ant is not aware of the NetBeans Filesystems API, all these
files must be physically present on disk, not e.g. in an archive or remote
filesystem.
There may also be a file named build.properties located in the
NetBeans user directory which can supply additional definitions needed for a
build: e.g. the locations of Java platforms and libraries. A typical
build-impl.xml loads property definitions from this global
properties file as well as the project's
nbproject/project.properties and
nbproject/private/private.properties .
The basic operations commonly performed on an Ant-based project are:
Creation from wizard, including build.xml .
Loading metadata from disk.
Modifying metadata and build properties in memory, and subsequently saving
to disk.
Regenerating nbproject/build-impl.xml , typically based on
transforming nbproject/project.xml with an XSLT stylesheet.
Running a build target of a well-known name in build.xml
using Ant.
Enumerating important build outputs ("artifacts").
Adding dependencies on "subprojects" by getting information about their artifacts
and storing references to them.
Interpreting values of Ant properties found on disk, to be used in
providing information to the IDE about various development files (e.g. when
implementing queries).
A new category of Ant-based project can be registered in the system by
adding an implementation of
{@link org.netbeans.modules.ruby.spi.project.support.rake.RakeBasedProjectType} to the default
lookup. This will get an instance of
{@link org.netbeans.modules.ruby.spi.project.support.rake.RakeProjectHelper} for every project
it creates; the helper does a lot of the work required to interact with the file
structure outlined above.
{@link org.netbeans.modules.ruby.spi.project.support.rake.ActionHelper} provides a number
of utilities which make it easy to run Ant targets.
{@link org.netbeans.modules.ruby.spi.project.support.rake.ReferenceHelper}s can also be
created by an Ant-based project and used to manage references to subprojects and
their artifacts in a high-level manner.
{@link org.netbeans.modules.ruby.spi.project.support.rake.ProjectGenerator} provides the
easiest way to create a new Ant-based project on disk. Use
{@link org.netbeans.modules.ruby.spi.project.support.rake.GeneratedFilesHelper} to make
build scripts and
{@link org.netbeans.modules.ruby.spi.project.support.rake.ProjectXmlSavedHook} to be told when
to recreate them.
{@link org.netbeans.modules.ruby.spi.project.support.rake.EditableProperties} is a
VCS-friendly alternative to {@link java.util.Properties}.
{@link org.netbeans.modules.ruby.spi.project.support.rake.PropertyUtils} also provides various
methods for working with Ant concepts such as relative file paths, property
substitution, etc.
|
org.netbeans.modules.ruby.spi.project.support.rake.ui |
Package containing classes supporting development of UI for Ant-based
projects.
|