Open Source Software in Java
AspectJ is an aspect-oriented extension for Java that enables modularization of cross-cutting concerns through compile-time, post-compile, and load-time weaving. It is actively maintained under the Eclipse Foundation and publishes core artifacts such as aspectjrt, aspectjweaver, and aspectjtools for use in Maven-based builds.
Apache Roller is a Java-based multi-user and group blog server for sites of any size. It provides Velocity-driven templates, comment moderation, Lucene search, MetaWeblog API support, RSS/Atom feeds, and deployment on Tomcat with MySQL. The project is developed at the Apache Software Foundation.
Apache Maven is a build tool for Java projects. Using a project object model (POM), it manages compilation, testing, packaging, and documentation. It provides dependency management, a large plugin ecosystem, and integration with the Central Repository.
RapidMiner is a data analytics and machine learning platform for data preparation, modeling, validation, and deployment. It provides a visual workflow designer, automated ML, and integration with data sources and execution environments. The product is developed by Altair (rapid-i.
Apache Commons BCEL (Byte Code Engineering Library) analyzes, creates, and manipulates Java class files. It represents classes as objects with methods, fields, and bytecode instructions, supports reading and writing . class files, and includes the JustIce bytecode verifier.
Open-source Java cache that scales from in-process to mixed in-process/out-of-process deployments; supports JSR-107, offheap storage, and Spring and Hibernate integration.
Java reporting library for page-oriented reports; outputs to screen, printer, PDF, HTML, XLS, CSV, and XML; for J2EE and web applications.
Open-source Yahoo Messenger API implementation for Java; fork of jYMSG; build a Yahoo client with minimal setup.
Web-based DMS for files, text, URLs and contacts. ACLs, version control, full-text search (PDF, Word, Excel, HTML), tree hierarchy, multi-language; web client, MySQL/PostgreSQL. FDA 21 CFR Part 11 options.
Suite of tools for analyzing compiled Java code: extracts dependency graphs and OO metrics from class files, computes API differences between versions. No source needed. Includes Swing and CLI interfaces and XSL output.
Java source code transformation tool: auto-format to a clean, normalized representation and auto-generate Javadoc comments from identifier names. Console interface; Sourclet API for customization.
Free Java tool that calculates the percentage of code exercised by tests and highlights untested areas. Based on jcoverage; Ant and Maven integration; HTML reports.
Extends the JDK with new interfaces and implementations: Bag, Buffer, BidiMap, MapIterator, ordered maps/sets, type-checking and transforming decorators, composite collections, reference map, comparators and iterators, set-theory utilities.
Annotation-based command-line parser: define options with @Option, generate usage and help, produce HTML/XML docs. Full localization; javac-style option syntax.
Library that augments DriverManager-based JDBC drivers with JNDI-bindable DataSources. Implements connection and statement pooling per JDBC 2/3/4; supports configuration via properties, HOCON, or XML and optional Java 21 virtual-thread support.
Open-source multi-threaded web crawler for Java. Simple interface; configurable depth, politeness, SSL, proxy, resumable crawling. Maven artifact edu.
Graph database: embedded, disk-based, transactional Java persistence engine. Data as graphs (nodes and relationships); Cypher query language; community edition open source.
Lightweight dependency-injection framework for Java. Uses annotations and generics to wire and test objects; supports javax. inject and Jakarta inject.
Java code coverage tool for Eclipse. Adds a Coverage launch mode; results are highlighted in editors and summarized in a view. Based on JaCoCo since 2.
Modular EJB container; local and remote servers. Now part of Apache TomEE (Tomcat + OpenEJB); provides EJB 3. x and embedding API.
Community ERP/CRM/MFG/SCM/POS; Java and PostgreSQL. Fork of Compiere; customizable, open source. Community-driven development and documentation.
Open source services framework for building SOAP and REST services. JAX-WS, JAX-RS; multiple transports (HTTP, JMS, JBI); WS-* support. Deploy in containers or as standalone; integrates with ESBs such as ServiceMix and Petals.
MVFLEX Expression Language (MVEL) is a hybrid dynamic/statically typed, embeddable expression language and runtime for the Java platform. Supports property binding, scripting, and templating; MVEL3 transpiles expressions to Java and compiles via javac.
Cross-platform personal finance application with double-entry accounting, multiple currencies, OFX/QIF import, budgeting, investment accounts, and PDF/spreadsheet export. Uses XML or relational database storage.
Java web application forum software (JForum2) with multi-language support, Servlet 3. 1 / Java 8 requirements, and database-backed storage. Includes admin panel and permission system.
Java library for console input, similar to GNU readline. Line editing, history, completion, syntax highlighting, password masking; cross-platform. Documentation at jline.
Java framework for spatial data infrastructures. OGC and ISO/TC 211 standards; WMS reference implementation, WFS, CSW, WPS, WMTS. OSGeo project.
Collaboration server: appointments, contacts, tasks, email, documents; WebDAV, LDAP, iCal. Web and fat clients (Kontact, Evolution). OX App Suite.
SAX-compliant Java parser for real-world (malformed) HTML; outputs well-formed XML/SAX stream. JAXP integration; command-line tool.
Free Java IDE for beginners and teaching. Interactive evaluation; used worldwide; source on GitHub (BlueJ-Greenfoot).
Cross-platform wrapper: JARs to Windows . exe. Native splash, icon, JRE search or bundled, heap options, Ant/Maven.
Web-based issue tracker with workflow; customizable fields, cross-references, file attachments. Spring-based; embedded DB or external.
Framework for building rich desktop and web applications in Java. Follows an N-tier server-centric architecture enabling applications with desktop-like ergonomics. Supports deployment across multiple frontends without GUI-specific code including Adobe Flex, Qooxdoo, WingS, ULC, and Swing.
JDBC proxy driver providing lightweight, transparent, fault-tolerant clustering capability to any underlying JDBC driver. Enables high availability by allowing database clusters to lose nodes without failing or corrupting transactions. Supports live activation and deactivation for maintenance without service loss.
Open source multi-protocol Java-based message broker supporting industry standard protocols including AMQP, STOMP, MQTT, and JMS. Provides high availability through shared storage and network of brokers for load distribution. Supports Jakarta Messaging 3.
Open source implementation of JSR-3 Java Management Extension and JSR-160 JMX Remoting API specifications. Provides HTTP-based adapter to view and invoke operations and attributes on MBean Server. Part of the JFox Java and Web Server framework.
Richly featured open source job scheduling library for Java. Integrates with virtually any Java application from stand-alone to large e-commerce systems. Creates simple or complex schedules for executing many jobs; tasks defined as standard Java components.
JSP tag library that compresses static resources (JavaScript, CSS). Caches compressed output in memory or to file; in-memory output can be gzipped. Compression algorithms are pluggable per resource type via strategy pattern.
Java libraries for Unicode and globalization. Code page conversion, collation (Unicode Collation Algorithm + CLDR), locale-aware formatting (numbers, dates, currency), Unicode normalization, Unicode regex, Bidi, text boundaries. Tracks Unicode and CLDR; extends Java's i18n support.
Ultra-thin bridge between different logging implementations. Libraries can use the API without imposing a specific logging library; applications can switch implementations without recompiling. Supports Log4j, JUL, and others.
Mozilla Java mail/news reader (Xena era). Three-pane GUI; POP3, IMAP, local mbox; MIME parser. Source released; influential threading algorithm (RFC 5256).
Pure Java CIFS/SMB client. SMB1/SMB2/SMB3; NTLMSSP, Kerberos; DFS. Actively maintained fork (org.
DrFTPD is a distributed FTP server in Java with a master and multiple file-transfer slaves. The master handles control and metadata; slaves serve data, enabling merged sites and aggregated bandwidth with standard FTP clients.
Apache Cassandra is a distributed wide-column database for high availability and linear scalability. It offers a Dynamo-style partitioner and Bigtable-like column families with tunable consistency.
yGuard is a free open-source Java bytecode obfuscator and shrinker. It renames classes and methods and removes dead code; works as an Ant task with Maven/Gradle.
JParsec is a parser combinator library for Java. Parsers are built by combining small parsers; supports operators, terminals, and operator precedence.
Apache FOP formats XSL-FO (and thus XML via XSLT) to PDF, PS, PCL, AFP, and other targets. Java library; part of Apache XML Graphics.
Apache Cayenne is a Java ORM with CayenneModeler GUI, DB-first flow, transparent transactions, and optional field-level encryption.
eXo Platform is an open-source digital workplace offering intranet, collaboration, social networking, knowledge management, and portal features. It supports JCR, CMIS, OpenSocial, REST APIs, and standards-based integration (LDAP, SSO). Built with Java and Groovy; supports MySQL, PostgreSQL, Oracle, and other databases.
JAMon (Java Application Monitor) is a free, thread-safe API for monitoring production Java applications. Tracks hits, execution times (total, avg, min, max), and concurrency. Modules for SQL, HTTP, Spring, Log4j, EJB; viewable via JAMon WAR, JMX, or API.
BORG is a Java Swing calendar and task-tracking application: month view with print, email and popup reminders, to-do list, and issue tracker with state workflow. Supports HSQL, JDBC, MySQL; runs on Linux, Windows, Mac, BSD. Development moved to GitHub (2020); SourceForge retains files and links.
MindRaider is a personal notebook and outliner that connects outline editing with Semantic Web tech (RDF, URIQA). Organize knowledge and resources; runs on Windows, Linux, Java. Successor: MindForger.
Open-source BRMS that treats Excel tables as executable rules. Business users author and test rules in spreadsheets; deploy as REST APIs with type-safe validation and WebStudio UI.
Lightweight, embeddable Java source interpreter with scripting features. Executes Java statements and expressions plus scripted objects and closures; JSR-274 (BeanShell Scripting Language) passed.
High-performance, full-featured text search engine library written in Java. Provides indexing and search, spellchecking, hit highlighting, and advanced analysis. The core of Apache Solr, Elasticsearch, and OpenSearch.
Application security framework for authentication, authorization, session management, and cryptography. Pluggable data sources, role- and permission-based access, and easy integration with web and enterprise applications.
Pure Java Subversion client library (product name SVNKit). No native binaries or javahl; full SVN operations on working copies and repositories over HTTP, HTTPS, SVN, and FILE. Used by IntelliJ IDEA, TeamCity, Subclipse.
Universal graphical SQL client for any JDBC database. Browse structure and data, run SQL, extend via plugins. Requires Java 17+ (5.
Layout manager for Swing, SWT, and JavaFX. String or API constraints; flowing, grid, absolute, grouped, docking. BSD or GPL.
Template engine for text output (HTML, email, config, source). FTL language; MVC separation; zero dependencies. Apache project since 2015.
Lightweight framework for unit testing J2EE applications: Struts actions/forms, servlets, filters, tags, plus JDBC, JMS, and JCA test frameworks; no application server required. Maintained on GitHub with Maven modules.
The Jakarta-ORO Java classes are a set of text-processing Java classes that provide Perl5 compatible regular expressions, AWK-like regular expressions, glob expressions, and utility classes for performing substitutions, splits, filtering filenames, etc. This library is the successor to the OROMatcher, AwkTools, PerlTools, and TextTools libraries originally...
Alma is a software workshop for modeling and analyzing. It reads several sources (languages, models, etc. ), helps you design for object-oriented modeling (definition of classes, relations, patterns, etc.
Commons Validator provides the building blocks for both client side validation and server side data validation. It may be used standalone or with a framework like Struts.
Anvil is a Java based server environment and object oriented programming language with templating support, being especially well-suited to for web applications.
Claros inTouch (previously known as Claros Webmail) is an Ajax communication suite with key features such as webmail, address book, post-it notes, calendar(in progress), built in instant messenger, rss reader, webdisk(in progress). It is an open source web application which features built in spam protection and instant messaging capabilities.
Jetty is a 100% Java HTTP Server and Servlet Container. This means that you do not need to configure and run a separate web server (like Apache) in order to use java, servlets and JSPs to generate dynamic content. Jetty is a fully featured web server for static and dynamic content.
Apache Axis2, the third generation Web services engine is more efficient, more modular and more XML-oriented than its predecessor Apache Axis. It is carefully designed to support the easy addition of plug-in modules that extend its functionality for features such as security and increased reliability.
HtmlUnit is a java unit testing framework for testing web based applications. It is similar in concept to httpunit but is very different in implementation. Which one is better for you depends on how you like to write your tests.
The fully integrated standalone wiki, and acceptance testing framework. New users should download the . zip file to give Fitnesse a try.
Activiti is a light-weight workflow and Business Process Management (BPM) Platform targeted at business people, developers and system admins. Its core is a super-fast and rock-solid BPMN 2 process engine for Java. It integrates perfectly with Spring, it is extremely lightweight and based on simple concepts.
dom4j is an easy to use, open source library for working with XML, XPath and XSLT on the Java platform using the Java Collections Framework and with full support for DOM, SAX and JAXP
The Beryl XML GUI library was written to ease the development of graphical user interfaces using Swing on Java. It lets you store user interfaces as XML markup. This will help you avoid unnecessary clutter in your source - Swing code mixed with application logic can become a troublesome and hard to read mess as the application size increases.