Ошибка форматирования деталей, Java Eclipse Indigo SR1

Этот вопрос относится к использованию Eclipse Indigo SR1 в Windows 7 для написания кода Java. Я объявил массив объектов (массив IloNumExpr, я пишу код оптимизации CPLEX, но не думаю, что это имеет значение). После их объявления (постановка точки останова на следующей строке) при наведении курсора на массив IloNumExpr в отладчике вижу сообщение

Detail formatter error: 
  An exception occurred: java.lang.ArrayIndexOutOfBoundsException

но когда я смотрю на отдельные элементы в массиве, все они нулевые, и когда я перебираю их и назначаю каждому из них, я вообще не получаю никаких ошибок. После того, как они назначены, Eclipse по-прежнему сообщает мне ту же ошибку подробного форматирования, но каждый элемент был назначен так, как я ожидаю, и когда я передаю этот массив другим методам, все работает так, как я ожидаю.

Что это значит? Должен ли я беспокоиться?


person user327301    schedule 15.03.2012    source источник


Ответы (2)


Ошибка указывает, что она исходит от Detail Formatter (Window/Preferences/Java/Debug/Detail Formatters или щелкните правой кнопкой мыши в представлении Variables на переменной массива и выберите Edit Detail Formatter).

Вы можете удалить или отключить модули форматирования, которые больше не хотите использовать.

Отвечая на ваш главный вопрос:
Эта ошибка означает только то, что средство форматирования деталей завершается с ошибкой, а не производит вывод для печати.
Не о чем беспокоиться.

person Daniel Gorodowienko    schedule 28.09.2018

Я тоже получил это сообщение.
Сначала я использовал:

this.arr = Arrays.copyOfRange(arr,0,counter);

this.arr было null, поэтому мне помогло, когда я добавил:

this.arr = new String[counter];
this.arr = Arrays.copyOfRange(arr,0,counter);
person Dan.F    schedule 04.12.2016
comment
Добро пожаловать в stackoverflow.com. Пожалуйста, ознакомьтесь с тем, как правильно задавать вопросы. Если вы хотите добавить дополнительную информацию к своему вопросу, отредактируйте вопрос, а не добавляйте ответ. И: Вставьте только минимальный, но полный код. В вашем примере никто не может знать, что означает counter или arr. - person Heri; 04.12.2016