В моем случае проблема была решена нажатием

тладке Java-приложения в Eclipse я получаюИсточник не найден«ошибка в двух случаях:

Переход к файлу в другом проекте, который уже импортированПереход к файлу в установленном репозитории maven

Файлы есть, но затмение не вступит в них, вместо этого будет показана кнопка «прикрепить источник"

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

Я новичок взатмение \ Java поэтому объяснение того, почему это происходит + как решить эту проблему, очень помогло бы!

Ответы на вопрос(29)

доступной для Eclipse. Но Eclipse не знает исходного кода для кода, который загружается динамически. Например. через мавен.

В случае Maven я рекомендую использовать плагин run-jetty-run:

http://code.google.com/p/run-jetty-run/

В качестве обходного пути вы также можете подключиться к работающей JVM с помощью отладчика, и вы увидите код. В качестве альтернативы вы можете использовать плагин Dynamic Source Lookup для Eclipse отсюда:

https://github.com/ifedorenko/com.ifedorenko.m2e.sourcelookup

К сожалению, это не помогло мне, поскольку у него есть проблемы с путями Windows с пробелами.

Я заполнил запрос на улучшение Eclipse Bugzilla, и если вы согласны, что этот вопрос «Источник не найден» должен исчезнуть навсегда, пожалуйста, проголосуйте за него здесь:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=384065

Спасибо!

Sasa

 Abdull11 сент. 2012 г., 17:48
Теперь у вас есть моя поддержка на эту ошибку!

Eclipse не знает автоматически, где находится исходный код для зависимых jar-файлов. Непонятно, почему отладчик не может проверять переменные после присоединения источника. Одна возможность - неверный / несовместимый источник.

Предполагая, что у вас есть проект maven и источники зависимостей загружены и доступны в локальном репозитории, вы можете установитьm2eclipse, плагин maven eclipse и посмотрите, поможет ли это в решении вашей проблемы.

вот что сработало для меня. Я перепробовал все возможные решения на StackOverflow, которые были. Я попытался изменить свое местоположение источника в меню отладки, я установил Eclipse-плагин m2e, я перешел со встроенного Maven и установил run-jetty-run, но ничего не получилось. Теперь я хочу предупредить, что я не пытался просматривать исходный код внешнего человека, я просто хотел увидеть свой СОБСТВЕННЫЙ код, но каждый раз, когда я «вмешивался» в свои методы, которые я написал, которые были в МОЕМ проекте, я получал Ошибка «Источник теперь найден».

После того, как я наконец спросил эксперта, моя проблема заключалась в том, что Eclipse первым делом вызывал ClassLoader, который можно увидеть из стека отладки. Все, что мне нужно было сделать, это F6 (шаг), а затем он вернул меня к исходному вызову, а затем F5 (шаг). И там был мой код. Вздох ... такое простое исправление, но потерянный час.

связанная с отладкой сервера Glassfish в Eclipse. Это было вызвано загрузкой исходного кода из другого репозитория (переход с SVN на GitHub). При этом сервер Glassfish использовал неправильные скомпилированные классы, и, следовательно, время источника и выполнения не синхронизировалось с точками останова, появляющимися в пустых строках.

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

Каталог классов находится в: / workspace / glassfish3122eclipsedefaultdomain / eclipseApps / <ваше веб-приложение> / WEB-INF / classes

Remove All Breakpoints

ла версии тестового проекта. Когда они были одинаковыми, проблема исчезла.

ской загрузки, попробуйте использовать этот плагин EclipseJava Source Attacher

Решение Вопроса

на самом деле загружен по программе.

Симптомы, которые вы описываете, звучат так, будто рассматриваемый класс не был найден в проекте, но в дистрибутивной банке без отладочной информациидо проект, с которым вы работаете.

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

РЕДАКТИРОВАТЬ: Обратите внимание, что по состоянию на 2018 г. принято использовать каркас сборки, такой как Maven, где путь сборки управляется плагином m2e, поэтому эта проблема должна быть намного реже, чем когда был задан вопрос.

 Junchen Liu28 дек. 2015 г., 01:37
ответ - это другой способ сказать: проблема в том, что «источник не найден», и я предлагаю «попытаться найти источник»
 Thorbjørn Ravn Andersen11 апр. 2013 г., 06:52
@shareef эта ссылка о пропущенном Javadoc, а не пропущенном источнике.
 Thorbjørn Ravn Andersen22 июн. 2017 г., 14:53
@dhein Подумайте об открытии нового вопроса с гораздо большей детализацией.
 shareef08 авг. 2012 г., 14:16
Привет, спасибо за все, но я нашел этот ответ более полезным (стек через ссылку потока) [stackoverflow.com/questions/5815013/...
 Thorbjørn Ravn Andersen17 сент. 2015 г., 22:22
@ACV Ну да. Возможно, это не так сложно, как вы хотели бы - не могли бы вы дать мне знать, что вы хотели бы объяснить лучше?

даже после редактирования поиска источника и добавления проекта, это не сработало. Я настроил путь сборки проекта.

После этого я выбрал Системную библиотеку JRE, и она заработала.

Настройки-> Java-> Отладка-> Использовать расширенный поиск исходного кода»

Редактировать: в этой версии eclipse есть связанная ошибка, которая приводит к сообщению «источник не найден» при отладке приложений Java. См. Отчет об ошибке bugs.eclipse.org/bugs/show_bug.cgi?id=537699 для получения дополнительной информации.

 Ibo18 сент. 2018 г., 18:45
понизить голос без объяснений? !!
 6pi19 сент. 2018 г., 18:29
Хорошо, в этой версии eclipse есть связанная ошибка, которая приводит к сообщению «источник не найден» при отладке приложений Java. Смотрите отчет об ошибкеbugs.eclipse.org/bugs/show_bug.cgi?id=537699 Больше подробностей

http://www.coderanch.com/t/587493/vc/Debugging-Eclipse-Source

«При работе в режиме отладки щелкните правой кнопкой мыши по запущенному потоку (на вкладке потоков) и выберите« Редактировать поиск исходного кода ». На этом этапе вы сможете добавить необходимый проект / jar, содержащий ваш исходный код».

Я добавил свой текущий проект таким образом, и он решил мою проблему

 Abdull08 окт. 2015 г., 16:55
Я должен был сделать это в представлении «Отладка» в разделе «Удаленное приложение Java» или «Java HotSpot VM».

Окно =>предпочтения =>Ява =>Установленные JRE,

Вы видите на экране вышеJre1.8.0_12 выбран.

выберите JRE, которую вы используете, и нажмитередактировать, Теперь вы должны увидеть нижний экран.

Нажмите на каталог, найдите Jdk, он должен выглядеть ниже.

нажмите ОК, и все готово

когда я работал над кодом Java, чтобы выполнить обработку файла Excel, содержащего набор данных, а затем преобразовать его в файл .csv, я попробовал ответы на этот пост, но они не сработали. проблема была в самих jar-файлах. после загрузки необходимых jar-файлов один за другим (старые версии) и добавления их в мой проект ошибка «источник не найден» исчезла. Может быть, вы можете проверить свои файлы JAR. надеюсь, это поможет.

ель для запуска приложения.

-Dmaven.surefire.debug

например

-Dmaven.surefire.debug exec: Java

а» после приостановки из потока. На этом этапе мы сможем добавить необходимый проект / jar, который содержит ваш исходный код. После того, как я добавил свой текущий проект таким образом, он решил мою проблему. Спасибо

Нажмите -> Изменить исходный путь поиска

после того

Нажмите -> Добавить, наконец, выберите проект Java и выберите путь к проекту.

Источник:https://www.youtube.com/watch?v=IGIKPY6q1Qw

решить проблему.

 Andy Dong28 янв. 2017 г., 02:40
Это сработало для меня! +1
 xilef30 июл. 2014 г., 15:26
Я последовал за этим, и это сработало. Возможно, потому что я также добавил желаемую папку проекта java на вкладке «Source» новой конфигурации run / debug. Может быть, простое добавление отсутствующей исходной папки / проекта на вкладку «Source» существующей конфигурации run / debug может сработать без предварительного удаления.

что мой Eclipse не отлаживал исходный код моего проекта. Я получаю пустую страницу с "Узлом исходного кода найден".

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

 Gapchoos11 окт. 2012 г., 07:45
это был простой и хороший ответ.
 Aniket06 дек. 2017 г., 13:11
Сделал трюк для меня тоже ..... Спасибо

Существует вероятность того, что файл jar является частью проекта, который вы еще не включили в рабочую область Eclipse.

Для этого вам нужно знать имя проекта файла jar. Скажем, например, егоазбука-18.0.0-SNAPSHOT.jar, это означает, что проект, который вы должны включить в свое рабочее пространство,азбука.

Примечание: После обновления путей поиска исходного кода вам придется остановить и перезапустить сеанс отладки. В противном случае файл с отсутствующим источником будет продолжать отображать «отсутствующий источник».

Редактировать поиск источника Выберите команду «Редактировать поиск источника ...» [Редактировать поиск источника], чтобы открыть диалоговое окно «Исходный путь», которое позволяет вносить изменения в исходный путь поиска выбранной цели отладки.

ВАЖНЫЙ Перезапустите Eclipse после этого последнего шага.

 Kumar Vaibhav25 мая 2016 г., 09:55
Это сработало для меня отлично!
 Jeach08 окт. 2015 г., 17:27
Важный!! Работало хорошо, но только ПОСЛЕ того, как я остановил запущенное приложение и перезапустил его. Пока я не сделал это, казалось, что он все еще не мог получить источники.
 stephen ebichondo10 апр. 2014 г., 16:23
Редактирование исходного поиска на самом деле работает для меня. Спасибо Дуглас Фрари
 Saras Arya22 февр. 2015 г., 16:22
и что, если даже это не работает ... потому что это не работает для меня
 Carlos Spohr26 нояб. 2014 г., 17:36
Работает как шарм. Спасибо!

это возможное решение, когда вы используете maven (pom.xml) с несколькими проектами.

Если вы работаете с Maven, убедитесь, какую версию вы используете внутри pom.xml (например, 1.0.1-SNAPSHOT). Возможно, ваш код обновлен, но ваши зависимости pom.xml по-прежнему принимают старые JAR-файлы / снимки (со старым кодом).

Нахождение проблемы:

Попробуйте отладить соответствующий файл.Поэтому установите точку останова в соответствующей области кода.когда"источник не найден" появляется, убедитесь, что привязка в правильном проекте (где можно найти файл .java).Файл компиляции .class открывается в редакторе IDE.Нажмите «Связь с редактором», чтобы найти соответствующий JAR / снимок.Теперь убедитесь, что этот JAR-файл самый последний. Возможно, есть более новый. В этом случае напишите номер самой последней версии в файле pom.xml.Затем выполните обновление maven и соберите (например, "mvn clean install -U") в правильном каталоге проекта.

s-Java-Debug [Приостановить выполнение на необработанных исключениях]. Затем консоль показала мне правильную ошибку: мой пользователь MySql не имел прав доступа к базе данных.По этой теме.

с этой проблемой довольно долго, затем я попытался восстановить проект с

mvn clean eclipse:eclipse

и это помогло.

 displayname08 июн. 2016 г., 20:05
Я не знаю, что произошло, но после выполнения этого я больше не вижу своих зависимостей maven в разделе «Maven Dependencies».
 naive12 нояб. 2014 г., 08:20
Только это работает для меня тоже!mvn eclipse:eclipse добавить зависимость проекта в путь сборки Java, чтобы он работал. Кроме того, плагин m2eclipse добавит зависимости проекта только в «Зависимости Maven», которые во вкладке «Библиотеки», и отладчик не сможет найти.
 Yasin Okumuş20 авг. 2014 г., 09:14
Только это решение работает для меня, спасибо!

когда найденный класс не имеет связанного (или назначенного) источника.

Вы можете связать источники для классов JDK вНастройки> Java> Установленная JRE, Если JRE (не JDK) определяется как используемый по умолчанию JRE, то ваши классы JDK не будут иметь подключенных источников. Обратите внимание, что не все классы JDK предоставляют источники, некоторые из них распространяются только в двоичной форме.Классы из пути сборки проекта, добавленные вручную, требуют, чтобы вы вручную подключили связанный источник. Источник может находиться в файле zip или jar, в рабочей области или в файловой системе. Eclipse просканирует zip-архив, поэтому ваши источники не обязательно должны находиться, например, в корне файла архива.Классы, из зависимостей, поступающих от других плагинов (maven, PDE и т. Д.). В этом случае это зависит от плагина, как источник будет предоставлен.PDE потребует, чтобы каждый плагин имел соответствующийXXX.source пакет, в котором содержится исходный код плагина. Больше информации можно найтиВот а такжеВот.m2eclipse может извлекать источники и javadocs для зависимостей Maven, если они доступны. Эта функция должна быть включенаm2eclipse предпочтения (опция была названа примерно так:Скачать исходный код и javadocs».Для других плагинов, вам нужно обратиться к их документацииКлассы, которые загружаются из вашего проекта, автоматически сопоставляются с источниками из проекта.

Но что, если Eclipse все равно предложит вам присоединить источник, даже если я правильно установил свои классы и их источники:

Это почти всегда означает, что Eclipse находит класс в другом месте, чем вы ожидаете. Проверьте ваш путь поиска источника, чтобы увидеть, где он может получить неправильный класс. Обновите путь в соответствии с вашими выводами.

Eclipse вообще ничего не находит, когда достигается точка останова:

Это происходит, когда у вас путь поиска исходного кода не содержит класс, который в данный момент загружается во время выполнения. Даже если класс находится в рабочей области, он может быть невидим для конфигурации запуска, поскольку Eclipse строго следует исходному пути поиска и присоединяет только зависимости проекта, который в данный момент отлажен.

Исключением являются пакеты отладки вPDE, В этом случае, поскольку среда выполнения состоит из нескольких проектов, которым не нужно объявлять зависимости друг от друга, Eclipse автоматически найдет класс в рабочей области, даже если он недоступен в пути поиска исходного кода.

Я не вижу переменные, когда попадаю в точку останова или она просто открывает источник, но не выбирает строку точки останова:

Это означает, что во время выполнения JVM или сами классы не имеют необходимой отладочной информации. Каждый раз, когда классы компилируются, можно добавлять отладочную информацию. Чтобы уменьшить объем памяти классов, иногда эта информация опускается, что затрудняет отладку такого кода. Ваш единственный шанс - попытаться перекомпилировать с включенной отладкой.

Средство просмотра исходного кода Eclipse показывает строки, отличные от тех, которые фактически выполняются:

Иногда это может показать, что пустое пространство также выполняется. Это означает, что ваши источники не соответствуют вашей версии классов во время выполнения. Даже если вы считаете, что это невозможно, это так, поэтому убедитесь, что вы настроили правильные источники. Или ваша среда выполнения соответствует вашим последним изменениям, в зависимости от того, что вы пытаетесь сделать.

 buzz379128 апр. 2016 г., 16:21
Отличный ответ! Титбит, отсутствующий в этом ответе, относится к пакетам OSGi: Eclipse может найти источник, если пакет содержит OSGI-OPT / src и пакет находится на пути сборки проекта Eclipse. Смотрите этот другой элемент stackoverflow для деталей:stackoverflow.com/questions/9720483/...
 displayname08 июн. 2016 г., 20:38
Может быть, вы можете взглянуть наэто - Мне уже не на что пытаться ..
 MasterJoe226 июл. 2018 г., 20:55
Хорошо знать. Много теории, но нет практического решения.

Окно - Настройки - Tomcat - Исходный путь - Добавить Java-проекты в исходный путь.

пожалуйста, установите и используйте GC (плагин GrepCode), иногда вам не нужно прикреплять исходный файл .zip к пути вашего проекта, чтобы GrepCode работал нормально для вас.

и eclipse не может найти ваш источник, попробуйте один из них.

Попробуйте добавить эти строки в pom.xml
<build>**<sourceDirectory>src/main/java</sourceDirectory>**...

Попробуйте maven-> update и затем отладьте

Перейти в корневую директорию проекта;

mvn eclipse: затмение

теперь попробуйте отладку

щелкните правой кнопкой мыши по проекту -> Свойства -> Сборка развертывания -> добавьте свой флягу

на панели «Source Attachment Configuration». Добавление последней версии jar из репозитория m2 не работает. Все классы из другого проекта Maven не удалось открыть.

Здесь test был мой другой проект maven, содержащий все исходники java.

Ваш ответ на вопрос