FileNotFoundException..Classpath-Ressource nicht im Frühjahr gefunden?

8

Ich habe Code wie folgt in Main.java :

%Vor%

Bis vor kurzem funktionierte es, aber ich weiß nicht, warum es mit der folgenden Ausnahme zu scheitern begann:

  

Ausnahme im Thread "Haupt"   org.springframework.beans.factory.BeanDefinitionStoreException:   IOException Parsing XML-Dokument von   Klassenpfad-Ressource   [spring-config.xml]; Verschachtelte Ausnahme   ist java.io.FileNotFoundException:   Klassenpfad-Ressource   [spring-config.xml] kann nicht geöffnet werden   weil es nicht existiert

Die spring-config.xml befindet sich im Ordner src / main / resources .

Eigentlich wollte ich etwas über die Anmerkungen erfahren: @Postconstruct und @Predestroy, also habe ich den Build-Pfad von Jdk 1.5 auf Jdk 1.6 geändert.

Seitdem hat das Problem angefangen ...

Irgendeine Ahnung, warum es nicht funktioniert?

HINWEIS: Wenn jemand meine Projektstruktur sehen möchte, folgen Sie bitte diesem Link Ссылка

BEARBEITEN alt text http://i38.tinypic.com/348nbde.png

    
javanoob 08.08.2010, 04:45
quelle

6 Antworten

11

Wenn Sie Ihren Klassenpfad auswählen, schließen Sie src/main/resources und% aus. co_de%:

%Vor%

Gibt es einen Grund dafür? Versuchen Sie nicht, einen Klassenpfad von src/test/resources auszuschließen:)

    
tolitius 13.10.2011 03:26
quelle
3

Überprüfen Sie den Inhalt von SpringExample / target / classes. Ist die Datei feder-config.xml da? Falls nicht, versuchen Sie, das Verzeichnis SpringExample / target / manuell zu entfernen und eine Neuerstellung mit Project = & gt; Clean ... in Eclipse zu erzwingen.

    
earldouglas 08.08.2010 17:18
quelle
0

Dies liegt daran, dass spring-config.xml nicht im Klassenpfad ist.

Fügen Sie den vollständigen Pfad von spring-config.xml zu Ihrem Klassenpfad hinzu.

Schreiben Sie auch den Befehl, den Sie ausführen, um Ihr Projekt auszuführen. Sie können den Klassenpfad im Befehl überprüfen.

    
YoK 08.08.2010 07:45
quelle
0

Zwei Dinge, auf die es sich zu beziehen lohnt:

  1. Der Bereich Ihrer Spring-Kontextabhängigkeit sollte nicht "runtime" sein, sondern "compile", was der Standard ist, so dass Sie einfach die Bereichslinie entfernen können.
  2. Sie sollten das Compiler-Plugin so konfigurieren, dass es mindestens mit Java 1.5 kompiliert, um die Anmerkungen beim Erstellen mit Maven zu verarbeiten. (Dies kann sich auch auf die IDE-Einstellungen auswirken, Eclipse kümmert sich jedoch nicht darum.)

    %Vor%

Danach sollte das Projekt von Maven neu konfiguriert werden. Ich erinnere mich nicht genau, wie man das in Eclipse macht, aber Sie sollten es finden, wenn Sie mit der rechten Maustaste auf den Projektknoten klicken und die Menüs durchsuchen.

    
Ryan Stewart 09.08.2011 04:42
quelle
0

Ich habe das gleiche Problem beim Ausführen meines Projekts bekommen. Beim Überprüfen der Dateistruktur wurde mir klar, dass Spring's XML-Datei im Paket des Projekts war und daher nicht gefunden werden konnte. Ich legte es außerhalb des Pakets und es funktionierte gut.

    
kaykae 16.07.2014 22:04
quelle
-2

Beste Methode, um einen solchen Fehler zu behandeln - " Anmerkung verwenden ". spring.xml- <context:component-scan base-package=com.SpringCollection.SpringCollection"/>

Fügen Sie Annotationen in die Klasse ein, für die Sie die Bean ID verwenden möchten (ich verwende die Klasse "First") -

%Vor%

Öffentliche Klasse First {

Änderungen in der Hauptklasse ** -

  

ApplicationContext-Kontext =               new AnnotationConfigApplicationContext (First.class);   benutze das.

    
Satya Tiwari 24.11.2016 14:10
quelle

Tags und Links