I got an error in Eclipse. What does this error message means:
The type iglu.ir.TermVector cannot be resolved. It is indirectly referenced from required .class files
I got an error in Eclipse. What does this error message means:
The type iglu.ir.TermVector cannot be resolved. It is indirectly referenced from required .class files
Point the JRE in the Build path to a JDK. That worked for me.
It means: "A class that you use needs another class that is not on the classpath." You should make sure (as Harry Joy suggests) to add the required jar to the classpath.
I had this error because of a corrupted local maven repository.
So, in order to fix the problem, all I had to do was going in my repository and delete the folder where the concerned .jar was, then force an
update maven
in Eclipse.I got the error when I just changing some svn settings and not anything in the code. Just cleaning the projects fixed the error.
In addition to the already suggested cause of missing a class file this error can also indicate a duplicate class file, eclipse reports this error when an class file on the build path uses another class that has multiple definitions in the build path.
In my case it was a result of my adding a new dependency to my
pom.xml
file.The new dependency depended on an old version of a library (2.5). That same library was required by another library in my
pom.xml
, but it required version 3.0.For some reason, when Maven encounters these conflicts it simply omits the most recent version. In Eclipse when viewing
pom.xml
you can select the "dependency hierarchy" tab at the bottom to see how dependencies are resolved. Here you will find if the library (and thus class) in question has been omitted for this reason.In my case it was as simple as locking down the newer version. You can do so by right-clicking the entry - there is an option to lock it down in the context menu.