Это сводит меня с ума от последний час. У меня есть два компьютера, на одном из которых я работаю, в основном, под управлением linux mint 11 и следующей версии JDK:
java version "1.6.0_20"
OpenJDK Runtime Environment (IcedTea6 1.9.5) (6b20-1.9.5-0ubuntu1~9.10.1)
OpenJDK Client VM (build 19.0-b09, mixed mode, sharing)
Теперь на моем компьютере с Windows я пытаюсь использовать тот же код, который я скомпилировал и запускал на Linux. В Windows одна работает XP со следующей java:
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)
Я знаю, что версии разные, но должно ли это иметь значение для чего-то столь же простого, как вложенный класс? Я очень надеюсь, что я только что допустил ошибку в следующем коде:
public class test {
public static class nClass
{
public void testFunc()
{
System.out.println("Test worked.");
}
}
public static void main(String args[]) {
test.nClass t = new test.nClass();
t.testFunc();
}
}
Этот код компилируется и отлично работает на компьютере с Linux. Когда я перенесу его в один из окон, он скомпилируется нормально, но выдаст:
NoClassDefFoundError test$nClass at test.main(test.java:10)
Я совершенно сбит с толку и полностью разочарован.