IntelliJ выполняет неправильные строки при отладке удаленного приложения Java

Я попытался удаленно отладить плагин maven для проекта liquibase с Intellij. Проблема в том, что IDEA выделяет неправильную строку исходного кода, и я не могу понять, почему. Исходный код, который я пытаюсь отладить, нетронутым. Я вручную создаю и устанавливаю плагин в своем локальном хранилище maven из источников, которые я использую в Intellij. Моя версия Intellij 11.1.3, а версия maven 3.0.4 работает на Ubuntu 12.04.

Для отладки плагина maven я использовал команду mvnDebug. Если у кого-то есть хоть малейшее представление о том, что не так, пожалуйста, дайте мне несколько советов. Также, если вам нужна дополнительная информация, пожалуйста, спросите. Я не слишком привык к удаленной отладке (на самом деле это второй раз, когда я это сделал), поэтому я мог бы поскользнуться с некоторой информацией, которая вам нужна.

Ответ 1

Для меня, когда IntelliJ выделяет неправильную строку, это всегда потому, что версия JAR/классов, используемых для запуска приложения, отличается от моих исходных файлов, то есть другая версия источников использовалась для создания JAR и/или классы.

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

Вы можете проверить это, посмотрев путь к классам, который используется для запуска приложения, найдите каталог JAR или каталог классов, содержащий классы, которые вы отлаживаете, и убедитесь, что они были созданы из источников, которые вы проверяете.

Обратите внимание, что когда вы отлаживаете сторонние библиотеки, вы часто можете загрузить банку "sources" (см. IntelliJ2-IDEA, чтобы получить Maven-2 для загрузки источника и документации).

Ответ 2

Если вы наткнулись на это сообщение и убедитесь, что источник и JAR - это один и тот же код, это может быть вашей проблемой.

http://youtrack.jetbrains.com/issue/IDEA-8021

Ответ 3

Вместо удаленной отладки вы можете запустить плагин непосредственно из IntelliJ.

  • Загрузите проект плагина Liquibase в IntelliJ, просто указав на pom.xml.
  • Выберите Edit Configurations...
  • Нажмите кнопку + на Add New Configuration.
  • Выберите Maven. enter image description here
  • Введите Working directory в проект, для которого вы хотите запустить плагин.
  • Введите Command line. Может быть process-sources, compile или liquibase:status в зависимости от того, что вы хотите сделать.
  • Нажмите OK
  • Установите контрольную точку в Liquibase Mojo.

Теперь вы можете запустить эту конфигурацию, нажав Shift + F9.

Maven запустится и, наконец, вы увидите, что ваш плагин ждет в точке останова!


Убедитесь, что вы создали плагин в целевом pom.xml с правильной версией, а также что вы создаете плагин перед его запуском. Вы можете убедиться, что включив Make в панели Before Launch.

enter image description here