This week's book giveaway is in the OCAJP 8 forum.
We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line!
See this thread for details.
The moose likes I/O and Streams and the fly likes jar file information Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of OCA Java SE 8 Programmer I Study Guide this week in the OCAJP 8 forum!
JavaRanch » Java Forums » Java » I/O and Streams
Bookmark "jar file information" Watch "jar file information" New topic

jar file information

Manu Verma

Joined: Oct 15, 2007
Posts: 10
Hi, I have use of jar file information, like class name and their methods name. I am using following code to list all files contains a particular jar file: -

import java.util.Enumeration;
import java.util.jar.JarFile;

public class JarFileInfo {

public static void main(String args[]) throws IOException {
JarFile j = new JarFile("jar file path");
Enumeration e = j.entries();

while (e.hasMoreElements()) {


Now, How would I get only class names and their respective method names? if I get only class name I can list their methods using following: -
Method[] methods = classnameobj.getDeclaredMethods();
System.out.println("Methods name are as below: -");
int i = 0;
for(Method method : methods) {
methName[i] = method.getName();

so, my problem is only getting all Class names of any particular jar file, any guidance or suggestions plzzzz.
Ulf Dittmer

Joined: Mar 22, 2005
Posts: 42958
Using the JarFile.getInputStream(JarEntry) method you can get at the bytes that make up the class file. Then you can use ClassLoader.defineClass to create a Class object, which you can use to get at the methods.
I agree. Here's the link:
subject: jar file information
It's not a secret anymore!