Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bagaturchess/visualbytecode
GUI which visualizes the metadata information encoded into the Java bytecode for a given set of Java classes. Especially designed to search for Java Annotations, for example in your Spring Boot project.
https://github.com/bagaturchess/visualbytecode
annotation-processing annotation-processor annotation-tool annotations bytecode java javaee javase metadata-extraction spring spring-boot
Last synced: about 1 month ago
JSON representation
GUI which visualizes the metadata information encoded into the Java bytecode for a given set of Java classes. Especially designed to search for Java Annotations, for example in your Spring Boot project.
- Host: GitHub
- URL: https://github.com/bagaturchess/visualbytecode
- Owner: bagaturchess
- License: mit
- Created: 2020-09-29T09:47:08.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2020-10-01T09:23:38.000Z (about 4 years ago)
- Last Synced: 2024-09-30T13:41:30.478Z (about 2 months ago)
- Topics: annotation-processing, annotation-processor, annotation-tool, annotations, bytecode, java, javaee, javase, metadata-extraction, spring, spring-boot
- Language: Java
- Homepage:
- Size: 1.5 MB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Overview
In the modern java applications, frameworks, libraries and tools there are a lot of archive files (*.jar, *.zip, etc.) with java classes.
So, it is difficult to:
- check if given class file is presented in the archives and where it is presented
- check if given class has given constructor, method or field
- check the metadata annotations assigned to a given class, constructor, field, method or method's argument
- search for metadata annotations to check which classes, class members or methods' arguments are annotated with given annotationThis project aims to resolve these difficulties by preventing people to search in archives and decompile java bytecode with java decompilers.
The project provides visual environment (GUI) where one can import files, directories and archives.
Than the program parses the bytecode of all classes and visualizes the metadata in a tree on the screen.![GitHub Logo](/Logo.png)
Also, there is an advanced feature for exporting the classes' metadata as XML file and optionally to use XSL transformation to extract specific data.
The part of the project, which parses the java bytecode is still closed source and hence is used as an obfuscated library (bytecode-parser.jar).
The rest of the project is open source and you are welcome to contribute.The very initial versions of this project were handed over as a diploma work in the university.
That is why I have decided to use MIT License for the project.# Running the program
The project structure is an eclipse based project, which can be directly imported into the Eclipse IDE. The main class is com.fmi.bytecode.annotations.gui.graphical.mainframe.AnnotationToolGUI.You can download also the standalone version from releases section, which needs only Java installed to run.
# Author
The author of the project is Krasimir Topchiyski.