У меня есть проблема, когда выбрасывается NoClasDefFoundError.Это озадачивает меня, так как я использую интерфейсы, и никакое определение класса не должно быть доступным.Я прочитал несколько постов, которые указывают на Classpath, но я не считаю, что это проблема здесь (хотя я могу ошибаться).Я использую IDE NetBeans 6.9.1.
Я создал образец установки для воспроизведения проблемы.Четыре проекта: Интерфейсы, Объекты, Локатор и Потребитель.Ниже вы найдете реализации.
Во время выполнения потребитель жалуется на отсутствие реализации SomeObject, о которой он не должен знать, так как он принимает интерфейс.java.lang.NoClassDefFoundError: objects / SomeObject
Что мне не хватает?
package interfaces;
public interface ISomeInterface { }
package objects;
import interfaces.ISomeInterface;
public class SomeObject implements ISomeInterface{ }
package locator;
import interfaces.ISomeInterface;
import objects.SomeObject;
public class Locator { public static ISomeInterface LocateImplementation() { return new SomeObject(); }}
package consumer;
import interfaces.ISomeInterface;
import locator.Locator;
public class Main { public static void main(String[] args) { ISomeInterface object = Locator.LocateImplementation(); }}