398 Stimmen

Eclipse - Haltepunkt kann wegen fehlender Zeilennummernattribute nicht installiert werden

Ich erhalte diesen seltsamen Fehler in Eclipse, wenn ich versuche, einen Haltepunkt zu setzen.

Unable to insert breakpoint Absent Line Number Information

Ich habe das Kontrollkästchen in den Compiler-Optionen aktiviert, aber ohne Erfolg.

14voto

Richard Le Mesurier Punkte 28822

Ich habe die Antwort auf dieses Problem von Seiten des BlackBerry SDKs: Aus irgendeinem Grund, egal wie oft ich die Optionen im Compiler änderte, die eigentliche zugrunde liegende Einstellungsdatei änderte sich nicht.

Suchen Sie im Ordner .settings Ihres Projekts nach einer Datei namens org.eclipse.jdt.core.prefs .

Dort können Sie die Einstellungen manuell ändern:

org.eclipse.jdt.core.compiler.debug.lineNumber=generate

edit: Außerdem ist mir aufgefallen, dass ich manchmal die Warnmeldung von Eclipse ignorieren kann und es trotzdem an der gewünschten Stelle anhält... immer kurioser... Ich verbuche das unter den Dingen, mit denen wir bei der Arbeit als Entwickler umzugehen lernen.

8voto

Binu N Kavumkal Punkte 81

Das hat bei mir funktioniert:

  1. Unter Window --> Preferences --> Java --> Compiler --> Classfile Generation müssen alle Optionen auf True .
  2. Gemacht debug="true" in der Datei build.xml <javac> Aufgabe.
  3. Bereitstellung der Anwendung im Kater durch das von ant erzeugte War
  4. Starten Sie den Tomcat neu in Debug Modus

8voto

jayaram S Punkte 570

Ich weiß nicht, ob das noch aktuell ist, aber vielleicht findet ein anderer Segler das nützlich.

Die Meldung erscheint, wenn man eine Klassendatei kompiliert hat, bei der die Debug-Flags ausgeschaltet sind.

In Eclipse können Sie diese Funktion mit den oben genannten Optionen aktivieren,

Fenster --> Einstellungen --> Java --> Compiler --> Generierung von Klassendateien: "Zeilennummernattribute zur generierten Klassendatei hinzufügen"

Wenn Sie aber eine Jar-Datei haben, dann erhalten Sie die kompilierte Ausgabe. Es gibt keine einfache Möglichkeit, dieses Problem zu beheben.

Wenn Sie Zugriff auf den Quellcode haben und ant verwenden, um die jar-Datei zu erhalten, können Sie die ant-Aufgabe wie folgt ändern.

  <javac  destdir="${build.destDir}" srcdir="${build.srcDir}" source="1.6" fork="true" target="${javac.target}" debug="on" debuglevel="lines,vars,source" deprecation="on" memoryInitialSize="512m" memoryMaximumSize="1024m" optimize="true"   >

Viel Spaß beim Debuggen..

ref: http://doc.sumy.ua/prog/Java/javanut/ch16_04.htm

7voto

VonC Punkte 1117238

Es wäre hilfreich, wenn Sie die Version von Eclipse, die Sie verwenden, und die Technologie (z. B. Java JDT oder AJDT für Aspect Java oder C++ CDT) angeben würden, nur um sicherzugehen.

Auf der Java-Seite bezieht sich Ihr "Aktivieren des Kontrollkästchens in den Compiler-Optionen" wohl auf este

Unter " Window --> Preferences --> Java --> Compiler --> Classfile Generation ", alle ' Class file ' Generierungsoptionen auf True gesetzt sind:

  • (1) variable Attribute hinzufügen,
  • (2) Nummern hinzufügen,
  • (3) Name der Quelldatei hinzufügen,
  • (4) unbenutzte lokale Variablen erhalten.

Sind diese in Ihrem Projekt nur auf globaler Ebene (Windows-Einstellungen) oder auf projektspezifischer Ebene aktiviert?

Und sind Sie sicher, dass die Klasse geöffnet (auf die Sie versuchen, einen Haltepunkt zu setzen):

  • eine Ihrer Quellen ist (und nicht aus einer Bibliothek eines Drittanbieters stammt)
  • ist eine .java , nicht ein .class ?

Versuchen Sie, alles zu säubern und wiederherzustellen, prüfen Sie auf mögliche Glas-Konflikte .

5voto

Christos Punkte 676

Wenn nichts anderes funktioniert, öffnen Sie die Debug-Perspektive, löschen Sie alle vorhandenen Haltepunkte und setzen Sie sie dann wieder zurück.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X