CINXE.COM
Apache Commons BCEL™ – Home
<!DOCTYPE html> <!-- | Generated by Apache Maven Doxia at 24 July 2024 | Rendered using Apache Maven Fluido Skin 1.3.0 --> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="author" content="Commons Documentation Team" /> <meta name="Date-Revision-yyyymmdd" content="20240724" /> <meta http-equiv="Content-Language" content="en" /> <title>Apache Commons BCEL™ – Home</title> <link rel="stylesheet" href="./css/bootstrap.min.css" type="text/css" /> <link rel="stylesheet" href="./css/site.css" type="text/css" /> <link rel="stylesheet" href="./css/print.css" media="print" /> <script type="text/javascript" src="./js/jquery.min.js"></script> <script type="text/javascript" src="./js/bootstrap.min.js"></script> <script type="text/javascript" src="./js/prettify.min.js"></script> <script type="text/javascript" src="./js/site.js"></script> </head> <body class="composite"> <a href="https://commons.apache.org/" id="bannerLeft" title="Apache Commons logo"> <img class="logo-left" src=" ./images/commons-logo.png " alt="Apache Commons logo"/> </a> <a href="index.html" id="bannerRight"> <img class="logo-right" src=" images/logo.gif " alt="Commons BCEL"/> </a> <div class="clear"></div> <div class="navbar"> <div class="navbar-inner"> <div class="container-fluid"> <a class="brand" href="https://commons.apache.org/proper/commons-bcel">Apache Commons BCEL ™</a> <ul class="nav"> <li id="publishDate">Last Published: 24 July 2024</li> <li class="divider">|</li> <li id="projectVersion">Version: 6.10.0</li> </ul> <div class="pull-right"> <ul class="nav"> <li> <a href="https://www.apachecon.com/" class="externalLink" title="ApacheCon"> ApacheCon</a> </li> <li> <a href="https://www.apache.org" class="externalLink" title="Apache"> Apache</a> </li> <li> <a href="../../" title="Commons"> Commons</a> </li> </ul> </div> </div> </div> </div> <div class="container-fluid"> <table class="layout-table"> <tr> <td class="sidebar"> <div class="well sidebar-nav"> <ul class="nav nav-list"> <li class="nav-header">BCEL</li> <li class="none active"> <a href="index.html" title="About"> About</a> </li> <li class="none"> <a href="download_bcel.cgi" title="Download"> Download</a> </li> <li class="expanded"> <a href="manual/manual.html" title="Manual"> Manual</a> <ul> <li class="none"> <a href="manual/introduction.html" title="Introduction"> Introduction</a> </li> <li class="none"> <a href="manual/jvm.html" title="The JVM"> The JVM</a> </li> <li class="none"> <a href="manual/bcel-api.html" title="The BCEL API"> The BCEL API</a> </li> <li class="none"> <a href="manual/application-areas.html" title="Application areas"> Application areas</a> </li> <li class="none"> <a href="manual/appendix.html" title="Appendix"> Appendix</a> </li> </ul> </li> <li class="none"> <a href="faq.html" title="FAQ"> FAQ</a> </li> <li class="none"> <a href="projects.html" title="Used by"> Used by</a> </li> <li class="none"> <a href="apidocs/index.html" title="Javadoc"> Javadoc</a> </li> <li class="none"> <a href="https://javadoc.io/doc/org.apache.bcel/bcel/" class="externalLink" title="Javadoc Archive"> Javadoc Archive</a> </li> <li class="none"> <a href="security.html" title="Security"> Security</a> </li> </ul> <ul class="nav nav-list"> <li class="nav-header"><i class="icon-info-sign"></i>Project Documentation</li> <li class="expanded"> <a href="project-info.html" title="Project Information"> Project Information</a> <ul> <li class="none active"> <a href="index.html" title="About"> About</a> </li> <li class="none"> <a href="summary.html" title="Summary"> Summary</a> </li> <li class="none"> <a href="team.html" title="Team"> Team</a> </li> <li class="none"> <a href="scm.html" title="Source Code Management"> Source Code Management</a> </li> <li class="none"> <a href="issue-management.html" title="Issue Management"> Issue Management</a> </li> <li class="none"> <a href="mailing-lists.html" title="Mailing Lists"> Mailing Lists</a> </li> <li class="none"> <a href="dependency-info.html" title="Dependency Information"> Dependency Information</a> </li> <li class="none"> <a href="dependency-management.html" title="Dependency Management"> Dependency Management</a> </li> <li class="none"> <a href="dependencies.html" title="Dependencies"> Dependencies</a> </li> <li class="none"> <a href="dependency-convergence.html" title="Dependency Convergence"> Dependency Convergence</a> </li> <li class="none"> <a href="ci-management.html" title="CI Management"> CI Management</a> </li> <li class="none"> <a href="distribution-management.html" title="Distribution Management"> Distribution Management</a> </li> </ul> </li> <li class="collapsed"> <a href="project-reports.html" title="Project Reports"> Project Reports</a> </li> </ul> <ul class="nav nav-list"> <li class="nav-header">Commons</li> <li class="none"> <a href="../../" title="Home"> Home</a> </li> <li class="none"> <a href="https://www.apache.org/licenses/" class="externalLink" title="License"> License</a> </li> <li class="collapsed"> <a href="../../components.html" title="Components"> Components</a> </li> <li class="collapsed"> <a href="../../sandbox/index.html" title="Sandbox"> Sandbox</a> </li> <li class="collapsed"> <a href="../../dormant/index.html" title="Dormant"> Dormant</a> </li> </ul> <ul class="nav nav-list"> <li class="nav-header">General Information</li> <li class="none"> <a href="../../security.html" title="Security"> Security</a> </li> <li class="none"> <a href="../../volunteering.html" title="Volunteering"> Volunteering</a> </li> <li class="none"> <a href="../../patches.html" title="Contributing Patches"> Contributing Patches</a> </li> <li class="none"> <a href="../../building.html" title="Building Components"> Building Components</a> </li> <li class="none"> <a href="../../commons-parent-pom.html" title="Commons Parent POM"> Commons Parent POM</a> </li> <li class="none"> <a href="../../build-plugin/index.html" title="Commons Build Plugin"> Commons Build Plugin</a> </li> <li class="none"> <a href="../../release-plugin/index.html" title="Commons Release Plugin"> Commons Release Plugin</a> </li> <li class="none"> <a href="../../site-publish.html" title="Site Publication"> Site Publication</a> </li> <li class="none"> <a href="../../releases/index.html" title="Releasing Components"> Releasing Components</a> </li> <li class="none"> <a href="https://cwiki.apache.org/confluence/display/commons/FrontPage" class="externalLink" title="Wiki"> Wiki</a> </li> </ul> <ul class="nav nav-list"> <li class="nav-header">ASF</li> <li class="none"> <a href="https://www.apache.org/foundation/how-it-works.html" class="externalLink" title="How the ASF works"> How the ASF works</a> </li> <li class="none"> <a href="https://www.apache.org/foundation/getinvolved.html" class="externalLink" title="Get Involved"> Get Involved</a> </li> <li class="none"> <a href="https://www.apache.org/dev/" class="externalLink" title="Developer Resources"> Developer Resources</a> </li> <li class="none"> <a href="https://www.apache.org/foundation/policies/conduct.html" class="externalLink" title="Code of Conduct"> Code of Conduct</a> </li> <li class="none"> <a href="https://privacy.apache.org/policies/privacy-policy-public.html" class="externalLink" title="Privacy"> Privacy</a> </li> <li class="none"> <a href="https://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship"> Sponsorship</a> </li> <li class="none"> <a href="https://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"> Thanks</a> </li> </ul> </div> <div id="poweredBy"> <a href="https://www.apache.org/events/current-event.html" title="ApacheCon" class="builtBy"> <img class="builtBy" alt="ApacheCon" src="https://www.apache.org/events/current-event-125x125.png" /> </a> <a href="https://maven.apache.org/" title="Maven" class="builtBy"> <img class="builtBy" alt="Maven" src="https://maven.apache.org/images/logos/maven-feather.png" /> </a> </div> </td> <td class="content"> <section> <h2><a name="Commons_BCEL"></a>Commons BCEL</h2> <p> The Byte Code Engineering Library (Apache Commons BCEL™) is intended to give users a convenient way 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. </p> <p> Such objects can be read from an existing file, be transformed by a program (e.g. a class loader at run-time) and written 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. </p> <p> BCEL contains a byte code verifier named JustIce, which usually gives you much better information about what's wrong with your code than the standard JVM message. </p> <p> BCEL is already being used successfully in several projects such as compilers, optimizers, obsfuscators, code generators and analysis tools. Unfortunately there hasn't been much development going on over the past few years. Feel free to help out or you might want to have a look into the ASM project at objectweb. </p> </section> <section> <h2><a name="Documentation"></a>Documentation</h2> <p> The package descriptions in the <a href="apidocs/index.html">Javadoc</a> give an overview of the available features and various <a href="project-reports.html">project reports</a> are provided. </p> <p> The <a href="scm.html">source repository</a> can be <a class="externalLink" href="https://gitbox.apache.org/repos/asf?p=commons-bcel.git">browsed</a>, or you can browse/contribute via <a class="externalLink" href="https://github.com/apache/commons-bcel">GitHub</a>. </p> </section> <section> <h2><a name="Release_Information"></a>Release Information</h2> <p>The latest stable release of BCEL is here, you may: </p> <ul> <li><a class="externalLink" href="https://commons.apache.org/proper/commons-bcel/download_bcel.cgi">Download</a></li> <li>Read the <a class="externalLink" href="https://www.apache.org/dist/commons/bcel/RELEASE-NOTES.txt">release notes</a></li> <li>Inspect the <a href="bcel5-bcel6-clirr-report.html">extended Clirr report</a> comparing 5.2 with 6.x</li> </ul> <p> Alternatively, you can pull it from the central Maven repositories through a <a href="dependency-info.html">dependency</a>. </p> </section> <section> <h2><a name="Getting_Involved"></a>Getting Involved</h2> <p> The <a href="mail-lists.html">commons developer mailing list</a> is the main channel of communication for contributors. Please remember that the lists are shared between all commons components, so prefix your email by [bcel]. </p> <p>You can also peruse <a href="issue-tracking.html">JIRA</a>.</p> <p>Alternatively you can go through the <i>Needs Work</i> tags in the <a href="taglist.html">TagList report</a>.</p> <p>If you'd like to offer up pull requests via GitHub rather than applying patches to JIRA, we have a <a class="externalLink" href="https://github.com/apache/commons-bcel/">GitHub mirror</a>. </p> </section> </td> </tr> </table> </div> <div class="footer"> <p>Copyright © 2004-2024 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.</p> <div class="center">Apache Commons, Apache Commons BCEL, Apache, the Apache feather logo, and the Apache Commons project logos are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div> </div> </body> </html>