Как Вы отлаживаете Апплеты Java?

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

Однако я продолжал пытаться использовать функцию ST_WITHIN в CosmosDB, передавая ей оба параметра, что было неверно.

Вместо этого я использовал библиотеку (GeoCordinate.NetCore), чтобы проверить, была ли точка внутри многоугольника.

Не было никакой необходимости использовать функции геолокации CosmobDB.

56
задан zimbatm 15 May 2009 в 11:17
поделиться

5 ответов

Эта статья немного устарела , но все еще актуальна (включая раздел, озаглавленный «Как отлаживать апплеты в подключаемом модуле Java»).

Изменить: возможно, лучший способ чтобы получить трассировку стека, нужно использовать консоль плагина Java . Если вы нажмете «t» в этом окне, вы увидите следующее:

Распечатывает всю существующую цепочку групп. Первая показанная группа - это Группа основной. ac означает активный счетчик; Это общее количество активных потоков в группе потока и ее дочернем потоке групп. agc означает активная группа рассчитывать; это количество активных дочерние группы потоков группы потоков. pri означает приоритет; это приоритет группы потоков. Следующий Группа основная, другие группы потоков будут отображаться как Группа, где имя - это URL-адрес, связанный с апплетом. Отдельные списки тем будут показать имя потока, поток приоритет, жив, если поток жив или уничтожается, если поток находится в процесс уничтожения, а демон если поток является потоком демона.

Другая команда, которую я чаще всего использовал с этой консоли, - это уровень трассировки от 0 до 5:

Это устанавливает параметры уровня трассировки, как описано в следующем разделе, Трассировка и ведение журнала.

На этой странице вы увидите, что уровни выглядят следующим образом:

  • 0 - выключено
  • 1 - базовое
  • 2 - сеть, кэш и базовый
  • 3 - безопасность, сетевое и базовое
  • 4 - расширение, безопасность, сетевое и базовое
  • 5 - LiveConnect, расширение, безопасность, сеть, временное и базовое

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

26
ответ дан 26 November 2019 в 17:25
поделиться

Программа просмотра апплетов поддерживает параметры отладки.

3
ответ дан 26 November 2019 в 17:25
поделиться

Неперехваченные исключения отправляются на консоль. Вы также можете использовать System.out для написания собственных сообщений в консоли. Чтобы просмотреть результаты, вам необходимо открыть консоль, щелкнув правой кнопкой мыши значок Java на панели задач и открыв консоль (обратите внимание, что это отличается от виртуальной машины Microsoft).

Для правильной отладки апплетов вы можете настроить Eclipse для отладки апплетов , Щелкните правой кнопкой мыши исходный файл апплета и выберите «Отладка как апплет». (Если у вас есть параметры для апплета, вам необходимо их настроить.) Затем вы можете пошагово выполнять код апплета, как если бы вы выполняли отладку любого другого кода Java.

1
ответ дан 26 November 2019 в 17:25
поделиться

Следы стека от неперехваченных исключений будут отображаться на консоли. Это можно включить из Панели управления Java («Дополнительно»> «Консоль Java»> «Показать консоль»), или в некоторых браузерах есть различные параметры или плагины для его включения.

Вы можете подключить отладчик к запущенному процессу PlugIn.

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

3
ответ дан 26 November 2019 в 17:25
поделиться

Помимо очевидного использования консоли Java и средства просмотра апплетов, начиная с Java 6 с обновлением 7, вы можете использовать VisualVM , который поставляется с JDK (JDK_HOME / bin / visualvm). Это позволяет вам просматривать трассировку стека каждого потока и даже просматривать все экземпляры объектов.

AppletViewer очень удобен, вы можете выполнить «Запуск от имени / Java-апплет» из Eclipse для запуска или «Отладка как / Java-апплет» для отладки классов ваших апплетов.

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

1) Получите отладочную информацию для двоичных файлов

Сделайте резервную копию файлов .jar из JRE_HOME / lib

(Загрузите и) Установите JDK для той же версии как ваш JRE.

Скопируйте файлы .jar из JDK_HOME / jre / lib в JRE_HOME / lib

Файлы внутри JDK были скомпилированы с включенной отладочной информацией (информация о номере строки исходного кода, имена переменных и т. Д.) И файлы JRE нет этой информации.

Без этого вы не сможете осмысленно войти в код основного класса в вашем отладчике.

2) Включите отладку для подключаемого модуля Java.

Перейдите в Панель управления Java / Java / Параметры времени выполнения Java / Просмотр / {{1} } Пользователь / Параметры времени выполнения

И добавьте параметры для включения отладки. Примерно так:

-Djava.compiler=NONE -Xnoagent -Xdebug -Xrunjdwp:transport=dt_socket,address=2502,server=y,suspend=n

Интересные параметры: порт (используя здесь 2502, вы можете использовать практически любой свободный порт, просто запишите его на потом) и приостановка - если вам нужно отладить апплет Запуск, загрузка классов и т. д. установите для этого параметра значение «y».Таким образом, при доступе к странице апплета браузер будет зависать, поскольку JVM немедленно приостанавливается в ожидании подключения отладчика.

3) Используйте вашу любимую среду IDE для удаленной отладки подключаемого модуля Java

В Eclipse, например, выберите «Выполнить / Отладка конфигураций ... / Удаленное приложение Java»

Нажмите кнопку «Создать».

Убедитесь, что тип подключения - «Socket Attach», выберите localhost в качестве хоста, если ваш браузер является локальным, и порт, который вы выбрали ранее (2502 в примере).

Возможно, вам придется включить src.zip в ваш JDK на вкладке «Источники», чтобы были доступны исходные коды базового класса Java.

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

53
ответ дан 26 November 2019 в 17:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: