::mound:: is a software development management platform. ::mound:: provides simple project management with lots of power, but stays out of the way.
a tool for testing Java GUI components and programs (includes a junit extension).
Acceleo is a code generator designed to efficiently implement the MDA approach and to improve software development productivity. It is natively integrated with Eclipse and EMF. It includes tools and editors making it easy to learn and to adapt to any kind of project or technology. It provides incremental generation, meta-model interoperability, a tree-like syntax, template driven customisation, and more.
actiWATE (Actimind Web Application Testing Environment) is a software platform intended to make the test automation process simple and cost-effective. The major component of actiWATE is a Java-based framework that emulates Internet browser functionality and provides a convenient and intuitive action-based API for test script development.
Aletheia is a browser-like application for sending raw HTTP requests. It is designed for debugging and finding security issues in Web applications.
Alvicom LoadManager is a test tool that focuses on load, stress, stability, and performance criteria. The tool runs on all platforms supported by Eclipse and Java. Supported protocols are HTTP, HTTPS, socket (TCP/IP), JMS, and RMI. Result data is collected in a central repository. This data can be exported/manipulated quickly, easily, and usefully. Thousands of virtual users (data units) can be simulated and tested. Color-coding shows which users pass or fail, and a script-link is provided.
Ant XInclude task
allows Ant build files to apply XInclude processing to XML files. It is based on the XInclude processor developed by Elliotte Rusty Harold
The aim of the Ant4eclipse project is to avoid redundancy of Eclipse and Ant configurations in order to build small but powerful build systems for the continuous integration process. It provides a set of tasks for the Apache Ant build tool. This tasks allow developers to use Eclipse configuration directly from their ant buildfiles. Included are tasks for reading Eclipse's .classpath file, for computing build order for a set of projects, and for launching Java applications as defined in Eclipse launch configurations.
Antiplate is an Ant script that creates a common project structure for Java projects. It creates directories, property files, and a build script with common settings and targets.
a Java-based build tool. In theory, it is kind of like Make, but without Make's wrinkles
APIviz is a JavaDoc doclet which extends the Java standard doclet. It generates comprehensive UML-like class and package diagrams for quick understanding of the overall API structure.
argparse4j is a Java port of the Python argparse commandline argument parser.
(commercial) Atlassian Bamboo enables development teams to adopt continuous integration (CI) in minutes, providing fast feedback about code changes so bugs don't pile up. As teams ramp up their CI effort, Bamboo can be scaled with remote agents located on-premise or in the Amazon EC2 cloud.
a java-xml based documentation engine used for writing documents in xml format
AustenX (sometimes just called "Austen") is a parser generator that uses Parsing Expression Grammars (PEGs), and a Packrat Parsing derived algorithm.
a tool for creating applications by actualizing java objects using XML. Axualize is based on JSR-57, and is intended to allow developers to create Java applications dynamically using XML
Azzyzt JEE Tools
Azzyzt JEE Tools is a set of Eclipse plugins for creating a so-called "azzyzted" project, and for creating code from a model.
a tool for increasing the quality of applications written in Java. It allows the programmer to use design by contract and define other development aspects right in the classes and interfaces where they are relevant, as JavaDoc comments
a Java based toolkit for applications that want to use images in the Scalable Vector Graphics (SVG) format for various purposes, such as viewing, generation or manipulation
Beanlet is an IoC container that was inspired by EJB3 and Spring. Beanlet's programming model looks similar to that of EJB3, but offers much of the flexibility of Spring.
beet adds flexible user behavior and performance tracking to a Spring-based Java application. HTTP requests, method executions, and SQL statements are tracked and associated to a user and session.
benerator is a framework for creating realistic and valid high-volume test data, used for testing (unit/integration/load) and showcase setup. Metadata constraints are imported from systems and/or configuration files. Data can imported from and exported to files and systems, anonymized, or generated from scratch.
Blitz JavaSpaces is an open source JavaSpaces implementation designed to ease development and deployment of JavaSpaces technology. It is Jini 2.0 enabled, and uses established VM principles.
calculates software evolution metrics against a version control like CVS in order to retrieve information about the evolution of the source code and the development process. Bloof is implemented in Java and comes with integrated database and Swing GUI
Butterfly Container is a Java dependency injection container. It is smaller, yet more flexible and easier to use than Spring, Pico, and Guice. Instead of XML, Butterfly Container is configured using a simple, flexible, Java-like configuration language. There are no external dependencies.
Butterfly Testing Tools
Butterfly Testing Tools is a stub, mock, and proxy object testing API for Java unit testing. It is similar to software such as EasyMock and JMock.
cache2k is a mature high performance Java caching tool.
cache4j is a cache for Java objects with a simple API and fast implementation. It features in-memory caching, a design for a multi-threaded environment, both synchronized and blocking implementations, a choice of eviction algorithms (LFU, LRU, FIFO), and the choice of either hard or soft references for object storage.
Cafesterol is an extension of the Objective Caml compiler suite: it compiles OCaml sources into Java .class files.
CaseRePort is a tool to find filename case inconsistencies in the source tree. It may be useful for porting applications in any programming language from a case-insensitive (like Windows) to a case-sensitive (like Linux) run-time environments.
a free javadoc inspired tool that automatically generates HTML web documentation from C++ programs by parsing the source file headers. It was designed to aid collaboration between package users and package developers by documenting the interface
Celtix delivers a Java enterprise service bus (ESB) runtime and set of extensibility APIs, simplifying the construction, integration and flexible reuse of technical and business components using a standards-based, service-oriented architecture.
(commercial) CERTivity is a powerful multi-platform visual tool for creating, managing, and handling different key store types (such as JKS, JCEKS, PKCS12, the Bouncy Castle types BKS and UBER, and Windows Native), public, private and secret keys in different formats (PKCS, OpenSSL, RSA/DSA, etc.), certificates (version 1 and 3), and certificates chains.
a development tool to help programmers write Java code that adheres to a coding standard. Its purpose is to automate the process of checking Java code
Classmexer is a simple Java instrumentation agent that provides some convenience calls for measuring the memory usage of Java objects from within an application.
Classycle's Analyser analyses the static class and package dependencies in Java applications or libraries. It is especially helpful for finding cyclic dependencies between classes or packages. Classycle is similar to JDepend which does also a dependency analysis but only on the package level.
(commercial) CloverETL is Java-based tool/framework for data integration and creation of data transformations. It is component based and follows the concept of transformation graphs which consist of individual nodes/components performing simple (or complex) operations on data.
Cobertura is a free Java tool that calculates the percentage of code accessed by tests. It can be used to identify which parts of your Java program are lacking test coverage. It is based on jcoverage.
codavaj is Javadoc in reverse: a seemingly useless reverse engineering tool to transform HTML Javadoc into Java source file skeletons (or a reflection API) like internal representation.
CodeCover is an extensible code coverage tool. It has support for Java and COBOL, supports statement coverage, branch coverage, loop coverage, and MC/DC, and performs source instrumentation for the most accurate coverage measurement. It has a CLI interface for easy use from the command line, an Ant interface for easy integration into an existing build process, and is fully integrated into Eclipse. It has customizable HTML and CSV reports, per test case coverage measurement, full integration with JUnit for automatic recognition of test cases, live notification for manual test case recognition, a boolean analyzer that helps to find test cases to increase strict condition coverage, and a correlation matrix to find redundant test cases and optimize your test suite.
CodeGenClipse adds Eclipse IDE support for code generation tools. It currently includes CodeGenJostraca, which integrates the Jostraca code generator into Eclipse 3.1.2 or later.
(commercial) CollectionSpy is a Java profiler that focuses on tracking and analyzing your program's usage of Collection Framework containers.
a tool for finding and removing duplicated Java code. Unlike tools that only locate duplicated code, the aim of Condenser is to also automatically remove duplicated code where it is safe to do so
ContiPerf is a lightweight testing utility to easily leverage JUnit 4 test cases as performance tests, e.g. for continuous performance testing.
Coronis Test is an HTML test framework based on jQuery. It is specially prepared for AJAX environments. For example, when it checks whether a given text is present, it waits some time, in case it's still processing and has not yet arrived.
(shareware) CsvTool analyzes, verifies, and transforms CSV data. It handles text and binary files and allows any 8-bit character to be used for field and record delimiters and quotes. Both backslash and doubled-quote escape rules are supported. Any size fields, any size records, and any number of fields per record are allowed. It optionally exports input data in a CSV format into a different output format.
CurlyML is a simple, concise format for storing and transmitting structured data and documents. CurlyML allows you describe structured data in a way that is efficiently, easily readable and writeable to both human beings and machines, with no extraneous fuss or redundant markup. Essentially, CurlyML is designed to get out of your way so you can get on with describing your data. This is in direct contrast with XML, which is overkill for many tasks.
CVSGrab is another kind of CVS client. When other CVS clients use the cvs protocol or ssh to read the repository, this utility reads the repository via its ViewCVS web interface. The advantage is that if you are behind a firewall that prevents you from updating files from a remote CVS server, this program will be able to bypass the firewall and download the latest files from the repository.
CyVis is a software metrics collection, analysis, and visualization tool for software built using Java. It enables developers to identify complex parts of their software very easily. It collects data from Java class or jar files, so there is no need for the source code. Once the metrics are collected, the statistical information is shown in a way that enables you to immediately detect which part of your software is complicated and which is not. CyVis can either be integrated with your Ant script or used with a command interface to generate reports. It also has a GUI interface.
DashO Pro is a Java application obfuscator, optimizer, and size reducer. It performs a dependency analysis on the application, finding all necessary classes. It removes all unused methods and fields, producing significant size reduction. Classes and methods can be renamed using the unique Overload-induction renaming algorithm. Byte code optimization, control flow obfuscation, and string encryption can also be selectively applied. It also includes tools for watermarking jars and decoding obfuscated stack traces.
Database Bean Generator
Database Bean Generator is a command line application that has the goal to make easy the construction of little applications that needs some database objects stuff.
DEMOS is a modeling tool for the EP model. The EP model proposes a declarative executable model for engineering object-based systems which achieves executability through a hybrid approach that annotates model elements with Java code snippets. It is implemented as an Eclipse plugin and provides graphical editing of applications using the EP model, background code generation, and immediate feedback on syntactical validity of models and user-supplied code.
Dependent Object Framework
The Dependent Object Framework enables efficient JUnit testing and test driven development against code that depends on objects that are persisted (e.g., to a database). This code was originally developed to add JUnit tests that used the real database code rather than trying to mock out all the dependencies in a large commercial enterprise product, IBM's WebSphere Product Center. The framework makes it extremely easy to simply specify what database objects a test "requires".
Designer for Jasper
a visual report designer for the Jasper Report writer
Deskzilla is an offline desktop client for the Bugzilla bug tracking system. It features caching of Bugzilla bugs, offline bug submission and modification with later synchronization, a unique search interface, and an issue breakdown structure with nested queries.
DICOM ImageIO SPI
DICOM ImageIO SPI is a quick and dirty but easy to use DICOM image reader implemented in Java. This will allow you to open a DICOM image as BufferedImage using the ImageIO framework provided with Java 1.4.
DJ Swing Suite
DJ Swing Suite provides some components and utilities that are often needed or greatly help the creation of rich Swing user interfaces.
DKPro Lab is a lightweight framework for parameter sweeping experiments. It allows to set up experiments consisting of multiple interdependent tasks in a declarative manner with minimal overhead.
creates DocBook code from Java source documentation. It is helpful, if you want to print reference handbooks of your API. The program can be used as javadoc doclet or as standalone application. The standalone application can be used as a converter to transform HTML documents to DocBook documents. Additionally DocBookDoclet comes with a Swing application called dbdoclet.TidBit, which helps you to manage your documentation projects and to create PDF files
Domino Javadoc Generator
This project aims to create a documentation to the Lotus Notes API for Java in a standard format common in the Java comunity and accepted by the most IDEs for Java. The Lotus Notes API is delivered as a Java archive together with the original documentation in the native format of a Domino database with the IBM Domino Designer. The documentation can be read only in the Lotus Notes. Java-oriented tools cannot use it to display a description of a Java class, to browse classes and their methods or to offer an automatic code insertion based on a Java object and its class.
allows you to create a mixed J2EE/ Domino Web site that is seamless to your users. Users will only have to log in once, whether they are in a Lotus Domino Web application or a J2EE application
Dozer is a powerful, yet simple Java Bean to Java Bean mapper that recursively copies data from one object to another. Typically, these Java Beans will be of different complex types.
DQguru is an easy-to-use data cleansing and de-duping tool. The user interface puts a strong emphasis on straightforward visualization of your data and processes.
Dtangler is a tool that creates a set of rules that the dependency structure of a software project must obey. Dependencies play a crucial role in software development. A healthy dependency structure between components has many benefits (software reuse, acceptance tests). These rules become a configuration file for the command-line dtangler tool. Integrating itinto a build script will make the build fail whenever a dependency rule is violated. This way the feedback loop of creating a bad dependency is much shorter. It supports cyclic dependency detection and implements Java parsing, but can be extended to other languages.
to help you to document your DTD's efficiently. It is a straightforward extension of the javadoc concept
a java source generation tool that can ease the development of multi-tier systems by offering a reliable solution to obtain the data transfer objects out of the domain model objects without hand-writting additional code
DynamicReports is a Java reporting library based on JasperReports. It allows you to create dynamic report designs and it doesn't need a visual report designer.
Easy Struts for Eclipse & JBuilder
o provide a bunch of tools, inside popular IDE as Eclipse v2.0, Borland JBuilder 5-6, in order to facilitate the developement of a web project based on Jakarta Struts framework
EasyBeans is an implementation of an EJB3 container. It aims to provide an implementation for the full EJBCore API. For the persistence matter, it relies on Hibernate EJB 3 or, in upcoming versions, on Speedo, the ObjectWeb's JDO implementation.
Eclipse Tools Project
Eclipse Tools Project provides a focal point for diverse tool builders to ensure the creation of best of breed tools for the Eclipse Platform. The mission of Eclipse Tools Project is to foster the creation of a wide variety of tools for the Eclipse Platform.
This project develops an integration of the version control system Darcs into the Eclipse IDE. It provides a set of plugins that enable IDE users to manage the code under development in Darcs repositories.
a text generation system ("text" means, including, but not limited to, source code in any kind of programming language). It makes use of Java/XML/XSLT technologies and is implemented for now as an Ant task
a free open source Java HTML editor applet and application. The Ekit standalone also allows for HTML to be loaded and saved, as well as serialized and saved as an RTF
ElegantJ Tables Bean
The ElegantJ Tables Bean provides table support for everything from a 4x10 row-column table to a table to represent a database or a spreadsheet solution. The two components, AWT Table and JFC Table, can handle any volume of data. Each cell can be edited as the type textbox, textarea, checkbox, combobox, button, icon, or boolean.
(commercial) a Java-Centric OO CASE Tool for UML
EMF To Graphviz
EMF To Graphviz (emf2gv) is an an Eclipse plugin that generates a graphical representation of an EMF model using GraphViz.
The Envers project makes it simple to version (JPA) entities. The only thing required is annotating them with @Versioned.
euCatalogue is a catalogue framework to help you build a generic catalogue structure. Along with euCatalogue there is an "admin web interface" to help with constructing the catalogue and a "user web interface" which allows browsing the catalogue.
Efficient Universal Generator (EUGene) allows you to manipulate and generate models.
eXtendible Java Rendering Toolkit
eXtendible Java Rendering Toolkit is an open source Java renderer with a ray tracing backend. Objects can be fed into the renderer either through Java or an XML-based scene description language.
an attempt to create a much faster replacement for Sun's 'jar' utility. Instead of being written in Java, FastJar is written in C
Feed4JUnit makes it easy to write parameterized tests for the JUnit framework and feed them with predefined or random test data.
Feed4TestNG makes it easy to write parameterized tests for the TestNG framework and feed them with predefined or randomly generated test data: test case data can be read from Excel or CSV files and equivalence class tests can be defined easily.
FITpro for Eclipse
FITpro for Eclipse will allow easier creation of FIT tests and fixtures, more flexible test execution, and refactoring of tests and fixtures. This will result in improved productivity, reduced rework, and improved usability of Fit.
a general-purpose text file preprocessor tool that uses FreeMarker templates. It is particularly designed for HTML preprocessor, to generate complete (static) homepages: directory structure that contains HTML-s, image files
formatjava for Eclipse
when you want to format multiple Java source in Eclipse the only way is to open each and every file, right click in the editor window, select the "Format" option, and save the formatted file. This plugin allows you to select one or more packages in the Java Package Explorer and format all .java files in those packages
provides an easy way to get data from Java servlets into Web pages, and helps you keep graphic design separate from application logic
a web site testing tool that uses HttpClient to download web site resource. Each web site resource can be then tested against one of the pre-packaged tests from Furies or you can easily write your own
Gastona is an approach for rapid and easy development in less than 1 MB, including sqlite and the complete documentation with samples.
a tool to visualize the data produced by the Java VM options -verbose:gc and -Xloggc:
Gengetopt Eclipse is an Eclipse plugin that provides an editor for GNU Gengetopt input files.
Java GetOpt Generator is a tool that generates a command-line argument parser from an XML file. Both a "parser" and "config" class are generated, which allows your program to either be launched from the command-line or programmatically configured and executed from another Java application.
GJDoc is the GNU documentation generation framework for Java source files.
Gnumler is a "mapping framework". In its current incarnation, it's able to generate Hibernate mapping using a GUI. It can load XMI data from Umbrello, reverse engineer existing databases, or load an SQL DDL file. It can generate standard mappings from an UML or DbLogic (sort of logical view) diagram. Support for many ORM frameworks will be included.
GPalta is a genetic programming toolbox that aims for simplicity and speed. It features tree-based genetic programming, optional strong typing, a multithreaded GUI to control an evolution process, the ability to save evolutions to a file, to be continued at another time and place, and easy interoperability with Matlab.
a tool to create visual representation of ant target dependencies. It works by taking a ant build file and creating a "dot" file. This file need to be post-processed with Graphviz to produce the actual graph
The Maven-Grester plugin is a Maven2 plugin for Jester, the JUnit tester tool. It enables Jester to be executed at any valid Maven lifecycle phase in a Maven Project. It saves developers from constructing cumbersome Java classpath entries on the commandline every time they need Jester to run against JUnit Tests in the project. It can also help to dispense with a suite of scripts that may have been written to handle complex Java classpath executions for Maven projects.
GUIdancer is a powerful new Eclipse-based tool for the automated testing of Graphical User Interfaces (GUI's), with a focus on programs written with Java and Swing.
Guru for SELF
a tool which assists in Self improvement
gwt-mpv-apt is an annotation processor to help generate some of the boilerplate code involved in GWT projects.
allows creation and maintenance of online help documents. It is especially tailored to the needs of the JavaHelp online help system for Java programs
Hibernate is a powerful, high performance object/relational persistence and query mechanism for Java. Hibernate lets you develop persistent objects following common Java idiom, including association, inheritence, polymorphism, composition and the Java collections framework.
Hoglet allows special markup to be added to text documents so that software documentation can be easily produced.
Indus is a collection of program analyzers and transformations implemented for customizing and adapting Java programs. It is intended to serve as an umbrella for static analyses such as points-to analysis, escape analysis, and dependence analyses, transformations such as program slicing and program specialization via partial evaluation, and software modules that delivers the analyses and transformations into a particular application such as Bandera or platforms such as Eclipse.
iReport is a popular open source visual report designer for JasperReports. iReports simplifies the process of accessing data sources, defining and designing the report layout, and compiling reports. iReport is a pure Java tool that allows users to visually edit complex reports with charts, images, sub-reports, and much, much more. It supports all the features of JasperReports and all JasperReports data sources. Read more
iReport Designer for JasperReports
iReport is a visual reporting tool based on JasperReports and written in pure Java. You can manage charts, images, sub-reports, etc. Data can be retrieved using JDBC, TableModels, JavaBeans, and XML. It supports output in PDF, XML, XSL, CSV, HTML, and Java2D.
a tool for generating wrapper classes for interfaces
IzPack is a Java installation software that you can use to distribute you own applications in singles Jar files that can be executed on any Java capable system.
an object request broker written in Java - an implementation of OMG's CORBA 2.0 standard. JacORB is free, easy to install and use.
Jailer is a tool for model-based data exporting, schema browsing, and rendering. It exports consistent, referentially intact row-sets from relational databases. It removes obsolete data without violating integrity. It is DBMS agnostic (by using JDBC), platform independent, and generates topologically sorted SQL-DML.
an acceptance-level automated testing tool that separates applications into features and allows those features to be tied together independently, creating test-cases. These test-cases can then be data-driven and executed against different environments. Even though it would be possible to write unit tests using Jameleon, Jameleon was designed with integration and acceptance-level testing in mind
Java Access Modifier Inference Tool is a static analysis tool build on top of the OVM/J Java Virtual Machine Framework that can analyze closed-world Java programms and give the programmer a list of modifiers that can be improved.
a text template engine for Java, useful for generating dynamic HTML, XML, or any text-based content. In a typical Model-View-Controller architecture, Jamon clearly is aimed at the View (or presentation) layer
a simple Swing app for browsing a set of jar files
an application which visualizes the content of a JAVA Jar archive using UML notation. It uncovers information like inheritance relations between classes, its attributes and methods, etc
Jase is a quick (put powerful) tool put together to support a UML (10,000 foot) view of Java source code.
(commercial) JasperAnalysis is used to explore trends, patterns, anomalies, and correlations in data. JasperAnalysis, an integral part of the JasperIntelligence platform, provides data analysis, also known as online analytical processing, or OLAP, capabilities to users.
Jaspersoft Studio is a report designer for JasperReports. It is a full rewrite of iReport on top of the Eclipse platform.
Jatha is a Java library that implements a fairly large subset of Common LISP, including most of the datatypes (e.g. packages, bignums) and their associated methods.
Java Code Generator
a plugin of eclipse and it can automaticlly make javabean file according to MVC pattern, jsp and template
Java Parallel Processing Framework
Java Parallel Processing Framework is a set of tools and APIs to facilitate the parallelization of CPU intensive applications, and distribute their execution over a network of heterogenous nodes. It is intended to run in clusters and grids.
Java Preferences Tool
Java Preferences Tool is a simple utility for Java developers and testers, in the spirit of Microsoft's Registry Editor. It allows you to view, edit, compare, and search Java preferences.
Java Regex Test GUI
Java Regex Test GUI is a simple GUI allowing you to test regular expressions using the standard java.util.regex package.
Java String Analyzer
for analyzing the flow of strings and string operations in Java programs. For each string expression, it computes a finite-state automaton that provides an upper approximation of the values that may appear at runtime
Java Text Table Formatter
Java Text Table Formatter is a set of classes to help print text in tabulated form.
Java VLC Bindings
Java VideoLan Client Binding lets you use the VideoLan multimedia player in any Java software.
an open source Java preprocessor that adds these features to any Java compiler: Multi-line strings with executable inclusions like Perl or Ruby, Optionally segregates Java+ strings into ResourceBundle files
JavaCov is a coverage-testing Eclipse plugin which can be used in various J2SE and J2EE projects. JavaCov is capable of verifying the so-called MC/DC (Modified Condition/Decision Coverage) testing criterion. It monitors each branch and MC/DC criterion, even in the case of multi-thread applications. It monitors the coverage contribution of new test cases. Test cases are optimized. The test cases covering a certain branch can be displayed. It is also supports Apache Ant, and generates HTML/XML reports.
JavaDoc Taglets Collection
The Taglet Collection is set of general purpose taglets for use with the JavaDoc tool. It provides a standard set of new tags, and allows you to create new ones by configuration or using simple Java interfaces.
JavaFBP is an implementation of the concepts described in the book "Flow-Based Programming". It allows a developer to specify an application as a network of "black- box" components, which are implemented as long-running Java threads, connected by bounded buffer connections, over which data objects travel ("information packets").
a group communication toolkit written entirely in Java. It is based on IP multicast, but extends it with reliability and group membership
a general purpose bytecode obfuscator, designed to fit effortlessly into your regular build and testing process, providing peace of mind that your valuable Java code is more secure against decompilation and other forms of reverse engineering
a port of GNU Readline for Java. Or, to be more precise, it is a Java-Native-Interface wrapper to readline
a little but very powerful tool for automatical generation of files (source code, HTML-code, ...)
an IBM research project into optimization and obfuscation of Java applications
JBooleanExpression is a simple Java API to evaluate a Boolean string expression like "!true&&false||true" and return a value of boolean primitive type.
jbootstrap is a tool that bootstraps your Java application without complex CLASSPATH settings.
JBrownie is a companion tool for Java developers preferring to use plain text editors for writing programs over a resource hungry IDE.
JCarder is a tool for finding potential deadlocks in concurrent multi-threaded Java programs. It does this by instrumenting Java byte code dynamically (that is, it is not a tool for static code analysis) and looking for cycles in the graph of acquired locks.
JChav is a way to see the change in performance of your web application over time, by running a benchmark test for each build you produce.
JCite makes it possible to cite snippets of Java source code in your HTML documents (API documentation, for instance).
(commercial) a 100% Pure Javatm, bytecode obfuscator with complete packaging solution, jar, zip and cab support
facilitates parsing/handling of command line parameters, adds consistency to command line parameter parsing and command usage display through all executables of a Java application
(commercial) a Java Design by Contract (DbC) tool. It instruments and compiles code that contains DbC comments, then automatically checks whether the specified contracts are violated at runtime
JCPP is a complete, compliant, standalone, pure Java implementation of the C preprocessor. It is intended to be of use to people writing C-style compilers in Java using tools like sablecc, antlr, JLex, CUP, and so forth. It has been used to successfully preprocess much of the source code of the GNU C library.
Java Coding Standard Checker: a powerful tool to check source code against a highly definable coding standard and potential bad code
JDave is a behavior-driven development framework that provides an easy way to specify the behavior of your Java classes.
jdbfviewer allows you to display dbf files in a JTable view (and optionally delete rows).
JDemo provides a framework for demonstrating code for interactive testing. It features many convenience classes and methods that make implementing demos very easy.
a JavaDoc doclet which emits an HTML report of all the packages, classes, methods, and so on, which are different (the "diff" part) when two Java APIs are compared
JDOX is a vim plugin that generates javadoc compatibile comment for c++ function definitions.
Java Embedded Python: embeds CPython in Java. It is stable and thread-safe, and is suitable for many different scripting needs
JERL is a system that allows Perl scripts to run within the JVM without requiring an external version of Perl.
JewelCli uses an annotated interface definition to automatically parse and present command line arguments
(commercial) create international, cross platform installers and updaters for your apps, applets, and servlets with the click of a button using JExpress
a lexical analyzer generator (also known as scanner generator) for Java, written in Java. It is also a rewrite of the very useful tool JLex
(commercial) JFormDesigner is an advanced GUI designer for Swing user interfaces. It is easy and intuitive to use and provides a lot of powerful features. JFormDesigner fully supports JGoodies FormLayout, TableLayout, GridBagLayout, and other standard layout managers.
a 100% Java HexDump program
an XML-based tool for constructing and configuring Java applications
JideBuilder is a Groovy builder for the JIDE Common Layer. It is based on the original SwingBuilder. The goal of the project is to have a builder for Swing applications that seamlessly integrates default Swing and JIDE components.
JInto is a plugin for Eclipse that lets the developer easily edit and maintain resource bundles (files that hold the localized strings for an application). It features parallel editing of all language versions (side by side), warnings when no text has been provided for a specific key, or when the text for one key is identical for different languages, and a search wizard to locate unused strings (strings that are referenced, but not actually defined in the resource bundle).
a lexical analyzer generator, written for Java, in Java
checks your Java code and find bugs, inconsistencies and synchronization problems by doing data flow analysis and building the lock graph
Java API and tools for the LIRC and WinLIRC infrared
remote control packages. It is distributed under the GNU Public License
JMeld is a visual diff and merge tool. It is built to be fast with large files. This tool is very much inspired by the "meld" program.
allows Java applications to invoke any function with any parameters from a native code library
Joget Workflow is Web-based workflow software made to develop workflow and Business Process Management applications.
Jolokia is a JMX-HTTP bridge giving an alternative to JSR-160 connectors. It is an agent based approach with support for many platforms. In addition to basic JMX operations it enhances JMX remoting with unique features like bulk requests or fine grained security policies.
Jostraca is a general purpose code generation toolkit for software developers. Code generation helps save you time and effort by reducing redundancy and drudge work.
jPatchLib is a Java library that implements the GNU patch algorithm. This allows a Java programmer to apply patch files, which are output by the diff command, to change existing text files.
jpecrga is a jQuery plug-in that helps Web sites use Google Analytics while complying with the amendment to the Privacy and Electronic Communications Act (PECR) that came into force in the UK on the 26th May 2011.
(commercial) a feature-rich next-generation profiling suite
JPythonJB is a JBuilder OpenTool which integrates JPython into JBuilder 3.5. One can use Python commands to manipulate JBuilder in various ways: add menu items, add files to projects, scan source files, etc.
Java Runtime Analysis Toolkit: purpose is to enable developers to better understand the runtime behavior of their Java programs
JRecord provides code to read and write files of length-based records, both fixed-length records and records based on length fields.
jRegExAnalyser is an interactive tool to write, test, debug, analyze, and profile regular expressions.
a standalone Swing application that helps you test regular expressions with the Java standard API
JSchnizzle is a free tool developed and used internally at Alternate Computing Solutions to manage the creation and generation of light-weight UML diagrams. It facilitates access to the free yUML rendering service, while managing sets of related UML diagram specifications.
provides a virtual desktop replete with dynamic scroll bars, dynamic menus, and dynamic button shortcuts. The JDesktopPane class, first introduced in JDK 1.2 as a subsidiary to Swing's GUI component series, lets you create a virtual desktop or Multiple Document Interface (MDI) in Java applications. JInternalFrame's various child windows or internal frames populate this desktop, and because those frames are internal, they are clipped at the boundary of the JDesktopPane container class
jSeamless is a UI abstraction layer for Java to allow developers to write code for any platform and any environment (Web, desktop, mobile, etc.) without having to know ahead of time the deployment platform or environment will be.
(commercial) extracts the minimal set of Java class files for an application, removes unused code and data, obfuscates symbolic names, finalizes code for optimized execution, and stores the results in a Java archive
JSizer is a tool that shows the size of Java classes in a graph. The graph has nodes with width, height, and color depending on the number of fields, number of methods, and lines of code.
jSmaTeP assists in the use of Java for processing import and export data by configuring a data structure rather than by programming it.
JSVN is a Java Swing client to access and manipulate a Subversion repository. JSVN is currently in the early stages of development.
Java Serialization to XML: takes in an object and writes out its contents as XML, and vice versa. Java objects are serialized as XML elements, and object fields as attributes
(commercial) a Technology Solutions Toolbox with powerful cross-platform tools for development, data management, database administration, migration, and integration. JSync runs on any JDK 1.2.2+ compliant platform and connects to virtually any data source including mainframe databases with SQL-like ease
a general text based templating system. It is very easy to use and very powerful. It can be used for almost anything - starting from code generation at translators/compilers to HTML outputing at Java servlets
jTracer is a stack trace visualization utility for libcsdbg. In other words, it acts as a TCP/IP server for libcsdbg clients, that connect to it and transfer their trace data, either C++ exception stack traces or generic thread stack traces and whole process stack dumps.
a JVMPI based profiler for Java that collects all methods calls in a XML File and displays them in a TreeMap
A software package that integrates Java with Tuxedo. Using JTux, Tuxedo customers can write Tuxedo clients and servers in Java and seamlessly integrate a wide range of Java enterprise technologies into their existing Tuxedo infrastructures.
JUnit PDF Report
JUnit PDF Report generates PDF test reports from your JUnit unit tests. Extension points give you the opportunity to add contents to the report. You can add descriptions and images to your test suite.
generates skeletons of TestCases based on your application source code. And it supports you to reorganize tests during refactoring
Jupidator is a framework to automate the updating procedure of an application. It can be used on all major platforms. It makes it easy to integrate the self-update feature to any program in any language.
a J2EE Production Performance Monitor and Java Performance Tuning solution, providing precise real-time performance metrics to assist you in ensuring your performance requirements and Service Level Agreements
JyConsole is an advanced Java graphic console for Jython, providing an object-oriented completion feature to help the handling Jython and Java objects. It includes a command history, easy external script loading through a simple file chooser, and basic GUI preference management.
a unit test tool for SECS (SEMI Equipment Communications Standard). It can simulate host or equipment, and provides SECS-I(RS-232C) and HSMS(TCP/IP) protocols
Launch4j is a cross-platform tool for wrapping Java applications distributed as jars in Windows native executables. The executable can be configured to search for a certain JRE version or use a bundled one, and it's possible to set runtime options, like the initial/max heap size. The wrapper also provides better user experience through an application icon, a native pre-JRE splash screen, a custom process name, and a Java download page in case the appropriate JRE cannot be found.
LLJVM provides a set of tools and libraries for running comparatively low level languages (such as C) on the JVM.
Luke is a handy development and diagnostic tool for Apache Lucene. It accesses existing Lucene indexes and allows you to display and modify their contents in several ways.
luntbuild is a daily build tool based on Apache Ant. It performs build automation and management totally from a clean web interface.
a "runtime" that turns Luxor XUL markup into live windows, dialogs, menus, toolbars and more without requiring a single-line of Java code
an open-source XML User Interface Language (XUL) toolkit in Java that tries to be compatible with Mozilla XUL. Luxor also includes a light-weight web server and a light-weight portal engine supporting RSS and integrates well with Apache Velocity
a build-time architectural rule checking utility for Java developers. It's meant to model the architectural ideals programmers always dream up for their projects, and then break -- it helps keep code clean and consistent
Marathon is a GUI test tool that allows you to play and record scripts against a Java Swing UI
Marathon GUI Test Tool
runs gui based acceptance tests against swing applications. It is composed of a runner, and recorder, and an editor. Tests scripts are expressed as python code
a java based XML DTD Parser Utility. It allows you to parse a dtd, generate a dtdtree for the dtd and merge the dtd and its included modules into a single dtd
a Java project management and project comprehension tool. Maven is based on the concept of a project object model (POM) in that all the artifacts produced by Maven are a result of consulting a well defined model for your project
a short course about Swing visual design and user interface implementation that can help you understand and avoid common design errors of Swing based Java applications
Migrations is a tool for managing changes to database schemas. It is an Enterprise tool based on ActiveRecord migrations from Rails. It features multiple schema interactions, runtime substitution of values, script generation, auditing, and more.
Mirror DSL is a simple DSL layer to make Java Reflection easier.
MSS Code Factory
The MSS Code Factory is a highly configurable code manufacturing tool which takes an XML data model and applies XML rule cartridges to transform it into application code. Currently, the target is XDoclet2/Hibernate3 with support for Oracle, PostgreSQL, Sybase, and DB/2 UDB relational databases.
NagiosAppender is a pure Java implementation of a Log4j appender that allows the developer/administrator to send log records to Nagios via the NCSA server (using the push model). It provides a simple solution for Nagios administrators whose only alternative is to implement a polling function against against the output of a standard Log4j appender. The log4j configuration file provides for user-specific mappings between Log4j levels and Nagios levels. The configuration file also allows the user to select whether to set the Nagios 'service' and 'host' programmatically via Log4j MDC, or via the config file. Later releases support XOR encryption.
NbGit is a module for the NetBeans IDE that adds support for working with the Git version control system. It uses the JGit library created as part of EGit to interact with Git repositories.
NDoclet is a doclet that generates MSDN style API documentation from Java source code. NDoclet was inspired by the NDoc documentation tool for .NET and credit goes to the NDoc developers for the stylesheets, scripts and images used by the HTML pages generated by NDoclet.
NiceStep is an attempt to bring the look and feel of N*XTSTEP, GNUStep, and WindowMaker to Java applications. It is a set of Java Beans and common dialogs that are designed to replace the components in the package java.awt.
Nickel is a bridge/bindings generator for Java/Objective Caml. It is part of the OCaml-Java project.
NMaven provides Maven 2.x plugins to support the building of .NET applications. This framework allows the developer to easily add additional compiler support through config files and have them built with Maven.
allows you to see how good your JUnit tests are. It generates a report from your code to graphically show you how many of your project's methods are being tested , and how well
Object Query is a Java tool which allows writing type-safe and refactor-resistant queries with cross persistence technology.
ObjectBrowser Bean provides a simple way of generating a graphical user interface automatically, following a file-explorer like interface. Any java object can be dropped into the bean, and it's methods and properties will be automatically made available for inspection and modification.
The ORA-Framework (Objectreferenceanalyser) can visualizes objects and their relations in memory during runtime of nearly every JAVA-application. It enables developers to take lightweight 'snapshots' of the current objects in memory.
OCL4Java is a pre-compiler(ant and eclipse) to include OCL-Constrains as Java5 Annotations in the Source-Code and have code to check them generated with a user-defined reaction to violations.
Ontopia is a set of tools for building applications driven by Topic Maps, such as Web portals.
compares the speed of the same object-oriented tasks in several object-oriented languages. It also has a statistics tool (written in Java), which can be used to easily compare the speed of the several versions of a given benchmark
OpenGrok is a fast and usable source code search and cross reference engine. It helps you search, cross-reference and navigate your source tree. It can understand various program file formats and version control histories like SCCS, RCS, CVS and Subversion. In other words it lets you grok (profoundly understand) the open source, hence the name OpenGrok.
OpenMap is a JavaBeans based programmer's toolkit. Using OpenMap, you can quickly build applications and applets that access data from legacy databases and applications.
OperaDriver can drive the browser running various tests on your web pages, just as if a real user was navigating through them. It can simulate actions like clicking links, entering text and submitting forms, and reports results back to you so you know that your website works as intended.
an Oracle Schema Documentation Generator
allows you to execute dynamic content periodically (ie every 30 minutes) rather than every request and store the result in memory. Each further request is served directly from the memory cache, resulting in dramatic speed increases
p-unit is a framework for unit testing and performance benchmarking. As a unit test, it can run with a single thread or multiple threads against the same test code. p-unit has an executor pool which can accelerate the execution speed dramatically. As a performance test framework, it records memory consumption and execution time, and generates results in the form of plain text, image, and PDF file. Users can also easily register their own reporters by implementing the p-unit event listener.
Panopticode provides a standardized format for describing the structure of software projects and integrates metrics from several tools into that format. Reporting options provide correlation, historic analysis, and visualization.
PAR Packaging and Deployment tool
a Cross-Platform Packaging and Deployment tool, dubbed as a cross between Java's JAR and Perl2EXE/PerlApp
Parallel Performance Wizard
Parallel Performance Wizard (PPW) is a performance analysis tool designed for UPC, MPI, and SHMEM programs. It features an easy-to-use interface and tight integration with GAS programming models via the GASP interface. It is known to work on many platforms. This project is part of a study of existing and emerging performance analysis theory and tools, current and future HPC architectures, and usability and user productivity preferences and methods, along with various programming models.
a simple easy-to-use application for "visually editing" of large patch files (diff files); different patches/diffs/folders/files can be selected/deselected, the resulting patch file can be saved and later run against a source tree
Pax Exam is a tool to ease testing OSGi frameworks and applications. It provides a simple to set up integration test framework for OSGi.
(commercial) perfino is an APM tool for monitoring JVM with cross-over functionality for profiling. It records business transactions and telemetry data.
PermaBEEP provides a complete toolkit for writing applications that use the Blocks Extensible Exchange Protocol (BEEP) [RFC 3080] for network communications.
reads SQL statements and associated in/out parameters from an XML file and builds a Java class for each SQL statement
PictDraw displays Quickdraw pictures (Macintosh PICT files). This way pict files can be used inside web page in a simple way. It is fully writen in Java 1.0.
pmdwlw is a plugin that integrates PMD into the BEA WebLogic Workshop environment.
a utility for testing Java GUI components. It allows developers to dynamically load components, record scripts, and then use those scripts to construct JUnit tests
a Java based graphical utility to find and edit Java property files in JAR, WAR, and other kind of ZIP archives. It is a tool for customizing Java applications, which use XML and Property files for their configuration
Profiler4j is a simple-to-use Java (1.5) CPU profiler, supporting remote profiling and on-the-fly configuration.
PTStemmer provides fast Java, Python, and .NET C# implementations of several Portuguese language stemming algorithms (Orengo, Porter, and Savoy).
Puakma Tornado Server
Puakma Tornado Server is a full featured application server designed to build complex enterprise Web applications quickly. It is ideal for programmers who are tired of the bloat and complexity associated with J2EE, has a very small footprint, and comes with a GUI installer that makes it possible to set it up in under two minutes.
PureLoad is a Java-based performance testing and analyzing tool that helps application developers by automating the process of stress testing their server applications.
QDox is a high speed, small footprint parser for extracting class/interface/method definitions from source files complete with JavaDoc @tags. It is designed to be used by active code generators or documentation tools.
QDWizard (Quick and Dirty Java Wizard) is a simple framework to create Swing wizards. It supports complex branching, i18n, errors, and requires only a few minutes to learn and use.
QiQu is a framework to support the MDA and MDSD approach. It is based on the idea to convert UML models into source code. With QiQu you build your own generators which convert your models into code, respecting your architectural design.
a sophisticated code quality assessment and coding standards technology for Java development detecting potential software defects at compile time
Radeox is a Wiki markup rendering engine. It is part of the weblog and Wiki tool, SnipSnap.
(commercial) a complete, in-the-box solution with the power and flexibility to handle the model-driven development needs for Java, C++ and General & Business UML modeling
RCP Toolbox is a collections of custom widgets and composites for SWT, JFace, and RCP applications. Currently, this includes Coolbuttons, Duallist, CoolSlider, ScrollingLabel, PropagateComposite, and more. An Eclipse RCP plugin and sample RCP applications are also offered.
RecordEditor is a data File Editor. It currently uses Record-Layout to format either Fixed Field length data files or CSV files in a human readable format.
Refactorit takes source code of any size and complexity, and rework it into well-designed code by means of refactoring.
(commercial) RegXmaker is a utility designed to assist programmers in creating regular expressions or regex. Regular expressions are a programming feature designed to easily find, replace and parse information from a variety of sources such as web pages and text files.
RetroGuard is a general purpose bytecode obfuscator, is designed to fit effortlessly into your regular build and testing process, providing peace of mind that your valuable Java code is more secure against decompilation and other forms of reverse engineering.
a Java-based ticker application. It uses JAXP to parse RSS-sites (RDF site summary). It is easy to use and easy to configure
rundoc is an Ant task designed to help with the single-sourcing of program documentation. This task replaces special commands embedded within text files with their output in a specified format. Currently, only docbook format is supported.
Sahi is an automation and testing tool for web applications, with the facility to record and playback scripts. Features include, in-browser controls, text based scripts, ant support for playback of test suites, reporting, and multi threaded playback.
Schmant is a build tool for building Java programs. It provides a set of build tasks (compile, text process, tar archive, etc.) and an environment in which to run build scripts.
Scriptella is an Extract-Transform-Load (ETL) and script execution tool. Its primary focus is simplicity. It doesn't require the user to learn another complex XML-based language to use it, but allows the use of SQL or another scripting language suitable for the data source to perform required transformations.
SDMetrics analyzes the structural properties of your UML models. It establishes quality benchmarks to identify potential design problems early on, predict relevant system qualities such as fault-proneness or maintainability to better focus your review and testing efforts, increase system quality and quality assurance effectiveness, find more faults earlier and save development cost, and refine your LOC or effort estimates for implementation and testing.
SecureJSH makes it possible for server-side Java applications to provide secure shell access to their administrators, users, developers, and service clients. It implements the RFC-4251 SSH 2.0 protocol with support for public key authentication. It leverages the JSR-199 Java compiler API to dynamically compile interactive Java statements, allowing you to copy and paste code between a SecureJSH terminal and your Java project source.
Selenium Remote Control
a simple heap profiler for Java, based on JVMPI. The profiler can be attached to a non-interactive JVM, creating heap statistics from time to time
a fast, lightweight Java template engine which cleanly separates presentation from application code
a small Swing demo application that can help you get started with Swing. It incorporates user interface and architectural patterns that scale well up to medium sized applications
a Swing demo application that can help you get started with Swing. It incorporates user interface and architectural patterns that scale well up to medium sized applications. It features better application startup process than Skeleton, stores and restores state via user preferences, more default dialogs etc
to develop a tool for analyzing dependencies between Java classfiles. The tool is supposed to be integrated in Apache Ant, a Java based build tool
Smooth Build is a build tool which provides a functional language which lets you describe a build process in a simple and readable way.
snip is an Ant task designed to help with the single-sourcing of program documentation. This task extracts snippets of text from files, placing them into properties in the Ant project. These properties can then be used by any other Ant task, and are particularly useful when referenced by s within the task.
SoaBox lets you create a virtual version of a client/server environment needed for developing SOA software, making this environment easy to reproduce.
SoftwareUpdate is a Java class that assists with adding an automatic software-update feature to applications. It doesn't perform the update, but takes care of administrative stuff like looking up the version number of the latest version, with the ability to distinguish and check different places based on operating system. It also builds the OS-specific URLs to make it easy to do a quick latest-version check in any desktop or server application.
(commercial) a decompiler for Java class files. Unlike previous attempts at decompilation technology, SourceAgain is able to correctly analyze and decompile even the most complex Java control flow, producing correct, re-compilable Java almost every time
SourceTec Java decompiler
(shareware) SourceTec Java decompiler analyzes the Java class files and generate the equivalent and compilable Java source codes.
Spoon is a processor that fully supports Java 5. It provides a complete and fine-grained Java metamodel where any program element (classes, methods, fields, statements, expressions, etc.) can be accessed both for reading and modification. It can be used for validation purposes, to ensure that your programs respect some programming conventions or guidelines, or for program transformation, by using a pure Java template engine.
Spring Crypto Utils
Spring Crypto Utils aims to provide a wrapper around Java's native cryptography API so that configuration of key stores, public and private keys, simple and by id signers, message digesters, message authentication code digesters, symmetric and asymmetric cipherers can be easily done via the Spring context configuration.
Spring Rich Client
The Spring Rich Client Project (RCP) is a sub-project of the Spring Framework. Spring-RCP's mission is to provide an elegant way to build highly-configurable, GUI-standards-following rich-client applications faster by leveraging the Spring Framework. It also provides a rich library of UI factories and support classes. Its initial focus is on providing support for Swing applications, but a goal of Spring-RCP is to be view agnostic as much as possible.
SPWrapper analyzes Oracle database system tables, finds out parameter names and types, and writes the Java code necessary for calling stored procedures. A Netbeans plugin is also available.
retrieves information from a CVS repository and generates various tables and charts describing the history of a software project development, such as a timeline for the lines of code, contribution of each developer, etc
Styler Task for Ant
Styler Task for Ant makes useful combinations of XSLT transformations easy to specify in an Ant build file.
Superversion is a single-user version control software. It features a graphical user interface and focuses on efficency and ease-of-use. Written in Java and distributed via Java WebStart, Superversion runs on every major platform.
Sustainable IDE (SIDE) is a graphical tool for developers who want to build sustainable software.
Swing XML Authoring Tool
SwiXAT is a Swing-based authoring tool for the quick and easy development of GUI Java applications. It implements out-of-box a true MVC framework and uses XML to define the view (SwiXml is used as the XUL engine), BeanShell as a scripting language for the controller, and JXPath as the binding mechanism between the view and model.
SWTJasperViewer is a JasperReports viewer component for SWT/JFace-based applications and Eclipse plug-ins. The component is designed with reusability in mind, so it can suit as many projects as possible. It is developed as part of the JasperAssistant report designer, where it's used for report preview.
for the dynamic XML generation implemented in Java. Features an extensible XML-compliant procedural scripting language
Task Blocks is a simple, easy to use task-scheduling application, in which a user's tasks cannot overlap. It includes Bugzilla export.
Tema is a macro processor and template engine for the Java platform. Its features include extensibility, database access, and Apache Ant integration via custom tasks.
Terrier is a software for the rapid development of Web, intranet and desktop search engines. More generally, it is a modular platform for the rapid development of large-scale Information Retrieval applications, providing indexing and retrieval functionalities.
Text2GUI generates Java GUIs from natural language using a custom algorithm in development.
a simple Java-based load testing tool, developed for the book "Professional J2EE with BEA WebLogic Server" by Paco Gómez and Peter Zadrozny
Tijmp is a small and fast memory profiler. It can be used to find out what objects exist on the Java heap. It can show why objects are not garbage collected.
TimesTool is a Tool for Modeling and Implementation of Embedded Systems. It is a tool set for modelling, schedulability analysis, synthesis of (optimal) schedules and executable code. It is appropriate for systems that can be described as a set of tasks which are triggered periodically or sporadically by time or external events.
Timezilla was developed as an internal tool for linking LShift's bug tracking package, Bugzilla, with a time tracking package developed internally, Timetracker. This allows us to cross reference time spent against work done so that time and materials projects can be billed accurately and reliably, and progress can be tracked on fixed priced projects.
Tiny Eclipse is distribution of Eclipse for development with dynamic languages for the Web, such as JSP, PHP, Ruby, TCL, and Web Services. It features a small download size, the ability to choose the features you want to install, and GUI installers for Win32 and Linux GTK x86.
Tiny Marbles provides persistence for dynamic objects, through a data model that you can create, modify and extend at runtime. It is useful for developers who need to create rapid prototypes with an unknown model and developers of applications that have inherently dynamic data models.
tinyap is a recursive descent parser with backup that outputs an abstract syntax tree (AST). Unlike in most parsers, the grammar is data. Tinyap uses an AST that represents a grammar to parse its input text. The factory default for the grammar is tinyap's grammar description language itself, so one can parse a grammar description and directly use the parse output to parse some other text written in the described language. Tinyap also features a plugin mechanism for grammars, which allows for dynamic modular grammars. Finally, it provides an interface to walk down the ASTs and to write external plugins to visit the nodes.
TMX Localization Editor
The TMX Localization Editor allows for the viewing, editing, and saving of localization data in the TMX open standard. Based on locale4j and written in Java/Swing, it is a quick and useful tool for localizing applications.
TMXReader is an exported translation memory reader for TMX files.
UCDetector (Unecessary Code Detector) is an Eclipse plugin tool that finds unnecessary (dead) public Java code.
UDoc is a tool to visualize some Java classes. It dynamically produces some UML-like diagrams from various sources (Javadoc, Java sources, Java binaries)
uimaFIT provides Java annotations for describing UIMA components which can be used to directly describe the UIMA components in Java code without the need for traditional UIMA XML descriptors.
Useful Java Application Components
a collection of Java components that may be useful for your project. It provides a powerful expression interpreter, a iText based document processing engine that generates PDF documents based on XML templates, a charting library and much more
a multi-platform installer written in Java. It is distributed under the GNU GPL License 2
Visual Paradigm for UML
a powerful, easy-to-use UML modelling and CASE tool. It lets you draw all types of UML diagrams, reverse source code to UML models, generate source code from UML diagrams, and much more
a small tool for struts documentation
Wabit, sponsored by SQL Power Group Inc, is a cross-platform, open-source ad-hoc reporting tool with a GUI and an embeddable API.
a web application generator. It generates complete JSP based web applications which contain charts and tables, who's contents are retrieved using database queries. The charts and tables can be configured to link to each other, enabling master-detail like drill-down
XMacroJ is an XML macro language for building text documents from XML components. XMacroJ removes the reliance on using the include directives and frees the programmer from locking the development directly into a specific framework. Using XMacroJ, the developer can loosely couple the development process to a framework by developing macros that wrap the framework and then creating target documents that are based on the macros. If the developer chooses to use a different framework, then only the macros are changed and the target documents can be recompiled.
XMLBeans is a tool that allows you to access the full power of XML in a Java friendly way. XMLBeans uses XML Schema to compile Java interfaces and classes that you can then use to access and modify XML instance data.
XMLUnit for Java provides two JUnit extension classes, XMLAssert and XMLTestCase, and a set of supporting classes (e.g. Diff, DetailedDiff, Transform, SimpleXpathEngine, Validator, and NodeTest) that allow assertions to be made about the differences between two pieces of XML, the outcome of transforming a piece of XML using XSLT, the evaluation of an XPath expression on a piece of XML, the validity of a piece of XML, or individual nodes in a piece of XML that are exposed by DOM Traversal.
a Java XML structure manager, similar to SAX. The core validating package is very compact
a little but useful graphical free-software tool allowing execution and visualization of XPath expressions in an XML document
The xsddoc subproject is a XML Schema documentation generator for W3C XML Schemas.
Yet Another Java Profiler
Yet Another Java Profiler is a profiler tool that uses the JVMTI interface. It can be used to selectively trace a Java program and store this information in a compressed logfile.
YourKit Java Profiler
(commercial) a CPU and memory profiler that makes it easy to solve wide range of CPU- and memory-related performance problems. It features automatic leak detection, powerful tools for the analysis of memory distribution, an object heap browser, comprehensive memory tests as part of your JUnit testing process, extremely low profiling overhead, transparent deobfuscation support, and integration with Eclipse, JBuilder, IntelliJ IDEA, and JDeveloper IDEs
Zanata is an online system for managing localization projects. Localization is the process of translating software interfaces or documentation into the various local languages used around the world.
Zorka is a flexible java monitoring agent with programmable bytecode instrumentation engine. It is designed to complement existing monitoring systems rather than duplicate their functionality.