webentwicklung-frage-antwort-db.com.de

Der Typ org.springframework.context.ConfigurableApplicationContext kann nicht aufgelöst werden. Es wird indirekt auf erforderliche .class-Dateien verwiesen

Ich folge dem Tutorial bei spring.io , um eine Feder-App mit Springboot zu erstellen.

Ich kann das Programm auf einem Computer einwandfrei ausführen ... Wenn ich es auf einem anderen Computer versuche, erhalte ich die folgende Fehlermeldung

Der Typ org.springframework.context.ConfigurableApplicationContext kann nicht aufgelöst werden. Es wird indirekt auf erforderliche .class-Dateien verwiesen

Ich habe versucht, meine JRE Systems Library (JDK 1.8) zu löschen und hinzuzufügen, das Projekt mit maven zu säubern und zu aktualisieren und sogar das gesamte Projekt zu löschen und erneut zu importieren. Alle diese Methoden haben keinen Erfolg gezeigt.

Meine POM-Datei ist

<project xmlns="http://maven.Apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.Apache.org/POM/4.0.0 http://maven.Apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.4.1.RELEASE</version>
  </parent>

  <groupId>test.api</groupId>
  <artifactId>api.test</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>api.test Maven Webapp</name>
  <url>http://maven.Apache.org</url>

  <dependencies>
     <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-web</artifactId>
     </dependency>
     <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-actuator</artifactId>
     </dependency>
     <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-test</artifactId>
         <scope>test</scope>
     </dependency>   
  </dependencies>

   <properties>
       <Java.version>1.8</Java.version>
   </properties>

  <build>
    <finalName>api.test</finalName>
    <plugins>
      <plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>

</project>

Die Klasse, die den Fehler angibt, ist die HelloWorldConfiguration.Java-Klasse

package hello;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class HelloWorldConfiguration {

    public static void main(String[] args) {
        SpringApplication.run(HelloWorldConfiguration.class, args);
    }

}

Jede Hilfe wäre sehr dankbar. Vielen Dank.

11
user2719805

Ihr Maven-Cache ist auf dem zweiten Computer beschädigt. Das JAR kann nicht geöffnet werden, deshalb erhalten Sie diese Ausnahme.

Sie können dies beheben, indem Sie diesen Befehl auf dem zweiten Computer für dieses Projekt ausführen:

mvn dependency:purge-local-repository

Wenn dies nicht funktioniert, entfernen Sie Ihr lokales Repo auf diesem Computer (~/.m2/repository/org/springframework) und führen Sie mvn package erneut aus.

33
Stephane Nicoll

Ich war auch schon früher mit dem gleichen Problem konfrontiert. Möglicherweise ist eine Abhängigkeitsbeschädigung aufgetreten. Sie können die Abhängigkeiten bereinigen und erneut auflösen. Dafür : 

  1. gehen Sie zu dem Projektspeicherort, an dem sich die Datei pom.xml befindet. 
  2. Öffnen Sie dort eine Eingabeaufforderung und geben Sie den folgenden Befehl ein: 

    mvn Abhängigkeit: purge-local-repository -DreResolve = true

9
xpioneer

Ich hatte das gleiche Problem. Ich habe dieses Problem behoben, indem das lokale Repository-Verzeichnis von Maven (.m2) auf Ihrem lokalen Computer gelöscht wurde. Es hat das Problem für mich gelöst.

1
Deepak Soni

Ich hatte das gleiche Problem und folgte diesen Schritten, um das Problem zu beheben:

1. Eclipse schließen

2. Entfernen Sie alle Dateien im Repository-Ordner .m2/repository

3. Öffnen Sie Eclipse erneut und aktualisieren Sie Ihr Maven-Projekt

0
Pankaj Sharma

dieser Konflikt tritt auf, weil einige Ihrer Abhängigkeiten beschädigt wurden. Folgen Sie diesen Anweisungen: -> Zum Entfernen dieses Konflikts gehen Sie einfach in Ihr .m2-Ordner-Repository und löschen alle Dateien aus diesem Ordner. und jetzt öffnen Sie Ihr Projekt. Gehen Sie zum Debuggen und machen Sie nach dem Reinigen und Herunterladen alle Aktualisierungen Ihres Maven-Projekts. und dein Konflikt wird gelöst werden.

0
krishna Tyagi
  1. Finden Sie heraus, welche Spring-Kontext-Version Ihr Projekt verwendet:

(in Eclipse: Projektexplorer -> [Ihr Projekt] -> Maven-Abhängigkeiten)

oder 

mvn dependency:tree

Listet alle Abhängigkeiten für Ihr Projekt auf

  1. Löschen Sie den Ordner org/springframework/spring-context/5.0.9.RELEASE aus Ihrem Maven-Repository .m2/repository. Angenommen, 5.0.9.RELEASE ist die Version des Spring-Kontext-Releases.
0
Barun

Ich habe auch das gleiche Problem, ich löste mich durch das Entfernen des .m2/repository/org-Ordners.