Community
Participate
Working Groups
Hi, I have a situation where the standard javac compiler can compile my source file, while the JDT compiler fails with a compilation error. Consider the following classes: ================= test/Dao.java =================== package test; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class Dao { protected static Log log = LogFactory.getLog(Dao.class); } ================= Test.java =================== import test.Dao; public class Test extends Dao { private static Object log = new Object(); } The Dao.class is located in a jar file named "commons.jar" The file Test.java is located in an Eclipse project. The build path of the project only contains the commons.jar file. The project fails to build with the following error: The type org.apache.commons.logging.Log cannot be resolved. It is in directly referenced from required .class files However: I can compile this Test.java file with the standard javac compiler without any error! (And yes: I only have the commons.jar in my classpath when compiling with the standard javac compiler :-)) regards, Maarten
Reproduced using 3.2 RC6. This problem already occured in 3.1.2
This is a straight forward 1 line fix. We did not notice that FieldDeclaration had called findField() with needToResolve set to false. Added BuildpathTest.testMissingFieldType
Released for 3.2.1 Released for 3.3 M1 while merging TARGET_321 in HEAD
Verified for 3.3 M1 using build I20060807-0010.
Verified for 3.2.1 using build M20060908-1655.