Eclipse debug - строка: не доступно - PullRequest
9 голосов
/ 22 мая 2010

Кажется, я не могу найти в Google ничего, что объясняло бы, почему это может быть и каково разрешение.Я перебираю сторонний код (для которого у меня есть источник) и очень хотел бы увидеть, как выполняется текущая строка ...

Глядя на флаги компиляции javac, я вижу флаг -g: none,Если этот флаг установлен, будет ли этого достаточно, чтобы объяснить, почему я не могу видеть номера строк?Если это так, то зачем кому-то это делать, влияют ли на производительность?Нужно ли мне самостоятельно перекомпилировать банку, чтобы прикрепить недостающую отладочную информацию (если это возможно)?

Спасибо!

Ответы [ 2 ]

8 голосов
/ 22 мая 2010

Глядя на флаги компиляции javac, я вижу флаг -g: none. Если этот флаг установлен, этого будет достаточно, чтобы объяснить, почему я не могу видеть номера строк?

Да, это причина.

Если это так, зачем кому-то это делать?

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

1 голос
/ 22 мая 2010

Я думаю, что это может повлиять на производительность, но отладочная информация определенно сделает ваши файлы классов больше.Так что это еще одна мотивация.

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

Очевидно, что если источник доступен для вас, вышеуказанный пункт не имеет значения.Если код с открытым исходным кодом, у вас не должно быть особых проблем при компиляции библиотеки (в конце концов, любой другой участник должен иметь возможность сделать это!).И да, это ваш лучший вариант на данный момент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...