Met behulp van Java Reflection heb ik een klasse ClassInspector geschreven die alle mogelijke info kan laten zien van .class bestanden. Ik heb hem getest met simpele "Hello World" klassen evenals met wat complexere; allemaal zelf geschreven.
Het probleem: Ik heb hier een aantal .class bestanden die ik niet zelf heb geschreven. Als ik hierop mijn ClassInspector loslaat, dan verschijnt de volgende error (met als te inspecteren bestand: Article.class):
java.lang.NoClassDefFoundError: Article (wrong name: CarPleasure/Article)
Dit komt doordat de methode Class.forName(String) om een of andere reden het bestand niet kan vinden.
De bestanden staan net als mijn zelf geschreven bestanden in de map "C:\java\CarPleasure". Het programma voer ik uit middels "java ClassInspector Article".
Hieronder even het stukje code dat voor problemen zorgt. Het gaat om de regel 9.
Het probleem: Ik heb hier een aantal .class bestanden die ik niet zelf heb geschreven. Als ik hierop mijn ClassInspector loslaat, dan verschijnt de volgende error (met als te inspecteren bestand: Article.class):
java.lang.NoClassDefFoundError: Article (wrong name: CarPleasure/Article)
Dit komt doordat de methode Class.forName(String) om een of andere reden het bestand niet kan vinden.
De bestanden staan net als mijn zelf geschreven bestanden in de map "C:\java\CarPleasure". Het programma voer ik uit middels "java ClassInspector Article".
Hieronder even het stukje code dat voor problemen zorgt. Het gaat om de regel 9.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| import java.lang.reflect.*;
public class ClassInspector
{
public static void main(String[] args)
{
try
{
Class c = Class.forName(args[0]);
}
catch (Throwable e)
{
System.err.println(e);
}
}
} |