diff --git a/src/main/java/gr/gousiosg/callgraph/JCallGraph.java b/src/main/java/gr/gousiosg/callgraph/JCallGraph.java
index 6ef87f5..20ccc8f 100644
--- a/src/main/java/gr/gousiosg/callgraph/JCallGraph.java
+++ b/src/main/java/gr/gousiosg/callgraph/JCallGraph.java
@@ -1,8 +1,12 @@
-
package gr.gousiosg.callgraph;
+import java.io.File;
import java.io.IOException;
+import java.util.Enumeration;
+import java.util.jar.JarEntry;
+import java.util.jar.JarFile;
+import org.apache.bcel.Repository;
import org.apache.bcel.classfile.ClassParser;
@@ -18,9 +22,22 @@ public class JCallGraph {
public static void main(String[] args) {
ClassParser cp;
try {
- cp = new ClassParser("/Volumes/Files/Developer/java-callgraph/target/classes/gr/gousiosg/callgraph/ClassVisitor.class");
- ClassVisitor visitor = new ClassVisitor(cp.parse());
- visitor.start();
+
+ JarFile jar = new JarFile(new File("/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Classes/classes.jar"));
+
+ Enumeration<JarEntry> entries = jar.entries();
+ while (entries.hasMoreElements()) {
+ JarEntry entry = entries.nextElement();
+ if (entry.isDirectory())
+ continue;
+
+ if (!entry.getName().endsWith(".class"))
+ continue;
+
+ cp = new ClassParser("/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Classes/classes.jar", entry.getName());
+ ClassVisitor visitor = new ClassVisitor(cp.parse());
+ visitor.start();
+ }
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
diff --git a/src/main/java/gr/gousiosg/callgraph/MethodVisitor.java b/src/main/java/gr/gousiosg/callgraph/MethodVisitor.java
index a504e1d..fb113b6 100644
--- a/src/main/java/gr/gousiosg/callgraph/MethodVisitor.java
+++ b/src/main/java/gr/gousiosg/callgraph/MethodVisitor.java
@@ -34,7 +34,8 @@ public class MethodVisitor extends EmptyVisitor {
public void start() {
if (mg.isAbstract() || mg.isNative())
return;
- for (InstructionHandle ih = mg.getInstructionList().getStart(); ih != null; ih = ih.getNext()) {
+ for (InstructionHandle ih = mg.getInstructionList().getStart();
+ ih != null; ih = ih.getNext()) {
Instruction i = ih.getInstruction();
if (!visitInstruction(i))
@@ -46,7 +47,8 @@ public class MethodVisitor extends EmptyVisitor {
short opcode = i.getOpcode();
return ((InstructionConstants.INSTRUCTIONS[opcode] != null)
- && !(i instanceof ConstantPushInstruction) && !(i instanceof ReturnInstruction));
+ && !(i instanceof ConstantPushInstruction)
+ && !(i instanceof ReturnInstruction));
}
/** Method invocation. */