it-swarm.com.de

Eclipse-Fehler ... kann nicht in einen Typ aufgelöst werden

Ich habe ein dynamisches Webprojekt, an dem ich arbeite, um eine Jsp/Servlet-App von JRun zu Tomcat zu migrieren.

Ich erhalte die Fehlermeldung: com.ibm.ivj.eab.dab.DatastoreJDBC kann nicht in einen Typ aufgelöst werden.

Ich habe die * .class-Dateien in einem com/ibm/ivj/eab/dab-Ordner (genau wie ich sie gefunden habe). Ich habe versucht, eine JAR-Datei zu erstellen und diese über "Add External Jar" zum Build-Pfad hinzuzufügen. Ich habe auch versucht, einen "External Class Folder" hinzuzufügen und auf den Ordner zu zeigen, der das betreffende "com" -Verzeichnis enthält.

Trotzdem bleibt der Fehler bestehen. Seltsam ist, wenn ich den Paketnamen eingebe. Eclipse füllt die Klasse für mich automatisch aus! (Bild unten). Alle Ideen wären sehr dankbar. Vielleicht wurden die Klassen für eine viel ältere Java-Version kompiliert, und das macht Probleme? Vielleicht muss ich etwas tun, um sicherzustellen, dass die Klassen im Verzeichnis WEB-INF/lib landen? 

Ichenter image description here

44
mikey
  1. Klicken Sie mit der rechten Maustaste auf Ihren Projektnamen.

  2. Klicken Sie auf Properties.

  3. Klicken Sie auf Java Build Path.

  4. Klicken Sie auf Add Class Folder.

  5. Dann wählen Sie Ihre Klasse aus.

Alternativ sollte Add Jars funktionieren, obwohl Sie behaupten, dass Sie dies versucht haben. 

"Haben Sie versucht, es auszuschalten und wieder einzuschalten"? (Starten Sie Eclipse neu).

39
KyleM

Wenn Sie ein Mavenized-Projekt verwenden, versuchen Sie, Ihr Projekt zu aktualisieren, indem Sie auf Alt + F5 klicken. Oder klicken Sie mit der rechten Maustaste auf die Anwendung und wechseln Sie zu maven/update project.

Es erstellt all Ihre Komponenten und wird behoben, wenn ein Importfehler vorliegt.

40
AKS

Um den Fehler zu beheben, "... kann nicht in einen Typ aufgelöst werden ...", gehen Sie wie folgt vor:

  1. Klicken Sie mit der rechten Maustaste auf die Klasse und wählen Sie "Erstellungspfad -> Ausschließen".
  2. Klicken Sie erneut mit der rechten Maustaste auf die Klasse und wählen Sie "Build Path -> Include".

Für mich geht das.

9
Amit Kumar Das

Projekt -> Reinigen

kann zumindest manchmal ausreichen, um die Angelegenheit zu lösen.

4
Jool
  • Rechtsklick Projekt> Eigenschaften
  • Java-Erstellungspfad> Klassenordner hinzufügen
  • Wählen Sie den Ordner bin
  • Klicken Sie auf ok.
  • Wechseln Sie Register [Auftrag] und Export
  • Wählen Sie den neu hinzugefügten bin-Pfad aus. Verschieben Sie AUF.
  • Klicken Sie auf die Schaltfläche Apply

 enter image description here

1
Prashanth Sams

Es gibt zwei Möglichkeiten, das Problem zu lösen "kann nicht in einen Typ " Aufgelöst werden. ":

  1. Fügen Sie bei Nicht-Maven-Projekten Jars manuell in einen Ordner und im Java-Erstellungspfad hinzu. Dies würde die Kompilierungsfehler beheben.
  2. Klicken Sie für ein Maven-Projekt mit der rechten Maustaste auf das Projekt und gehen Sie zu Maven -> Update-Projekt. Wählen Sie alle Projekte aus, bei denen Kompilierungsfehler auftreten, und markieren Sie "Aktualisieren von Snapshots/Releases erzwingen". Dadurch wird das Projekt aktualisiert und die Kompilierungsfehler behoben.
1
Swati Gour

Einfache Lösung:
Gehe zu 

Projekteigenschaft -> Java-Builderpfad -> Maven -> Suchen Sie nach c3p0-0.9.5.2.jar 

und sehen Sie sich den Speicherort an, an dem die Datei im lokalen Repository gespeichert ist. Wechseln Sie zu diesem Speicherort und löschen Sie das Repository manuell.

<img src="https://i.stack.imgur.com/dROTl.png" alt="G">

1

Für maven benutzer:

  • Klicken Sie mit der rechten Maustaste auf das Projekt
  • Maven
  • Projekt aktualisieren
1
Paulo Rodrigues

Lösung : 1.Projekt -> Erstellungspfad -> Erstellungspfad konfigurieren

2.Wählen Sie im linken Menü den Java-Build-Pfad und wählen Sie "Quelle".

3. Wählen Sie unter Projekt die Option Einschließen (Alle) aus und klicken Sie auf OK

Cause : Das Problem liegt möglicherweise daran, dass u die CLASS-Dateien oder Abhängigkeiten für das Projekt gelöscht haben 

0
sundersparks

Vergessen Sie bei vielen neuen Benutzern nicht, nach Ihren Importanweisungen ein Sternchen (*) hinzuzufügen, wenn Sie alle Klassen in einem Paket verwenden möchten. Zum Beispiel

import Java.io.*;

public class Learning 
{
    public static void main(String[] args) 
    {
        BufferedInputStream sd = new BufferedInputStream(System.in);
            // no error
    }
}

================================================== ===============

import Java.io;

public class Learning 
{
    public static void main(String[] args) 
    {
        BufferedInputStream sd = new BufferedInputStream(System.in);
            // BufferedInputStream cannot be resolved to a type error
    }
}
0
Jamisco

Ich habe die Quelle in den falschen Ordner importiert. Ich bin so an Visual Studio gewöhnt, dass ich erwarte, dass alle IDEs so zuvorkommend sind.

0
user182162

das Kopieren der JAR-Dateien wird aufgelöst. Wenn Sie den Code zufällig aus einem der Tutorials kopieren, vergewissern Sie sich, dass die Klassennamen im richtigen Fall geschrieben sind ... Ich habe zum Beispiel einen Code aus einem der Tutorials kopiert, die Solr in S cap hatten. Eclipse warf ständig den Fehler und ich googelte auch ... alles war in Ordnung und es dauerte 30 Minuten, bis ich das kleine Problem der Kappe erkannt hatte. Ich bin mir sicher, dass dies jemandem helfen wird

0

Zuerst müssen Sie die pom.xml aktualisieren, indem Sie unten hinzufügen

    <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <version>4.1.6.RELEASE</version>
    </dependency>

1] Klicken Sie mit der rechten Maustaste auf Ihren Projektnamen.

2] Klicken Sie auf Eigenschaften.

3] Klicken Sie auf Java Build Path.

4] Überprüfen Sie 'Maven-Abhängigkeiten' in Auftrags- und Exporttabl.

In meinem Fall war es zuvor nicht aktiviert. Wenn ich es also aktiviere, funktioniert meine @ GetMapping-Anmerkung einwandfrei.

0
Annu
Project -> Build Path -> Configure Build Path
Select Java Build path on the left menu, and select "Source"
 click on Excluded and then Include(All) and then click OK
    Cause : The issue might because u might have deleted the CLASS files 
 or dependencies on the project

Für maven benutzer:

Klicken Sie mit der rechten Maustaste auf das Projekt

Maven 

Projekt aktualisieren

0

Das Problem wurde gelöst, indem die Dose in WEB_INF/lib abgelegt wurde.

0
Andreas L.

Es gibt auch die Lösung für IvyDE-Benutzer. Klicken Sie mit der rechten Maustaste auf Projekt -> Efeu -> Auflösen. Es ist erforderlich, die Eigenschaft ivy.mirror in build.properties festzulegen

0
andron