The Eclipse Platform is an open extensible IDE for anything and yet
nothing in particular. The Eclipse Platform provides building blocks
and a foundation for constructing and running integrated software-
development tools. The Eclipse Platform allows tool builders to
independently develop tools that integrate with other people's tools
so seamlessly you can't tell where one tool ends and another starts.
The IcedTea-Web project provides a Free Software web browser plugin running
applets written in the Java programming language and an implementation of
Java Web Start, originally based on the NetX project.
The fsnotifier is used by IntelliJ for detecting file changes. This
version supports FreeBSD and OpenBSD via libinotify and is a
replacement for the bundled Linux-only version coming with the
IntelliJ IDEA Community Edition.
The Bouncy Castle Crypto APIs consist of the following:
. A lightweight cryptography API in Java.
. A provider for the JCE and JCA.
. A clean room implementation of the JCE 1.2.1.
. A library for reading and writing encoded ASN.1 objects.
. Generators for Version 1 and Version 3 X.509 certificates, Version 2 CRLs,
and PKCS12 files.
. Generators for Version 2 X.509 attribute certificates.
. Generators/Processors for S/MIME and CMS (PKCS7).
. Generators/Processors for OCSP (RFC 2560).
. Generators/Processors for TSP (RFC 3161).
. Generators/Processors for OpenPGP (RFC 2440).
. A signed jar version suitable for JDK 1.4/1.5 and the Sun JCE.
It's distributed under a modified X license.
Jad is a Java decompiler, a program that reads one or more
Java class files and convert them back into Java source files
which can be compiled again.
Jad is a C++ program and it generally works several times faster
than decompilers written in Java.
No source code is available for this program. Jad is free for
non-commercial use, but not for commercial use.
With the JavaBeansTM Activation Framework standard extension, developers
who use JavaTM technology can take advantage of standard services to
determine the type of an arbitrary piece of data, encapsulate access to
it, discover the operations available on it, and to instantiate the
appropriate bean to perform said operation(s). For example, if a browser
obtained a JPEG image, this framework would enable the browser to identify
that stream of data as an JPEG image, and from that type, the browser
could locate and instantiate an object that could manipulate, or view that
The Java Advanced Imaging (JAI) API provides a set of object-oriented
interfaces that support a simple, high-level programming model which lets
you manipulate images easily.
The Byte Code Engineering Library (formerly known as JavaClass) is
intended to give users a convenient possibility to analyze, create,
and manipulate (binary) Java class files (those ending with
.class). Classes are represented by objects which contain all the
symbolic information of the given class: methods, fields and byte code
instructions, in particular.
Such objects can be read from an existing file, be transformed by a
program (e.g. a class loader at run-time) and dumped to a file
again. An even more interesting application is the creation of classes
from scratch at run-time. The Byte Code Engineering Library (BCEL) may
be also useful if you want to learn about the Java Virtual Machine
(JVM) and the format of Java .class files.
BCEL is already being used successfully in several projects such as
compilers, optimizers, obsfuscators and analysis tools, the most
popular probably being the Xalan XSLT processor at Apache.
JavaBeans utility library. It provides wrappers around getters
and setters for a property in an object for classes that conform
to the JavaBeans naming standard.
The Jakarta Commons CLI library provides a simple and easy to use
API for working with the command line arguments and options.