Nested Folders in Eclipse Classpath
Question
I'm trying to add two folders to my eclipse project's classpath, let's say Folder A and Folder B. B is inside A. Whenever I add A to the classpath
<classpathentry kind="lib" path="/A"/>
it works just fine, but I need to be able to access the files in B as well. Whenever I try to add
<classpathentry kind="lib" path="/A/B"/>
to the classpath, it says
Cannot nest 'A/B inside library A'
I'm a newbie when it comes to editing the classpath, so I'm wondering, is there is anyway to add a folder in the eclipse classpath that is nested in another folder that is also in the eclipse classpath?
Solution
I don't think you can (or should be) allowed to do that, and it's not really an Eclipse issue AFAIK
Any individual classpath is a root under which the JVM starts looking for classes using the standard package notation
So let's say that your program has a class X in the default package, and a b.X class in the b package. If the default package root is /a, then your package b would be in /a/b
If you had one classpath root pointing to /a and one classpath root pointing to /a/b, and now you asked for class X, then one could interpret your request as X in the default package (since there is a root at A), but also as class X in the default package relative to the path /a/b, but that is the class b.X
So to prevent these things from happening, you're not allowed to have classpath roots that are nested.
OTHER TIPS
Try to do this, works for me on eclipse Indigo.
<classpathentry kind="lib" path="/A" excluding="B/"/>