'identifier' is not a field or nested class in class 'identifier'
The compiler detected a reference to a nested class or field but the nested class or field does not exist in the specified class. This error usually occurs due to a syntactical error in referencing a nested class or field. This error can also occur if a reference to a field in an inner class is made but the field does not exist within the inner class definition. Ensure that the inner class or field exists and compile again.
The following example illustrates this error:
class Simple1{
int var1;
}
class Simple2{
static class InnerClass{
int var1;
}
static Simple1 smp;
}
public class Simple{
void method1(){
int x, y;
x = Simple2.innerclass.var1; /*error: 'innerclass' is not name of
an inner class. 'InnerClass' is */
y = Simple2.smt.var1; /*error: 'smt' is not the name of a field in
'Simple2'. Should be 'smp' */
}
}