2017-10-12 1 views
0

Je reçois cette erreur dans le tracé de la pile lorsque je tente de lancer:démarrage de l'application a échoué - Impossible de traiter les candidats à l'importation pour la classe de configuration

java -jar spring-boot-starter-web.jar 

De ma ligne de commande sur mon build pour mon pot de ma Application de démarrage de printemps. Je ne suis pas sûr de ce qui cause cette erreur. Je laisse IntelliJ faire la construction du projet.

[principal] ERREUR org.springframework.boot.SpringApplication - démarrage de l'application échoué org.springframework.beans.factory.BeanDefinitionStoreException: Échec pour traiter les candidats à l'importation pour la classe de configuration [app.ContactRunner]; l'exception imbriquée est java.lang.IllegalArgumentException: aucune classe de configuration automatique trouvée dans META-INF/spring.factories. Si vous utilisez un emballage personnalisé , assurez-vous que ce fichier est correct.

Pour référence, la classe ContactRunner est juste:

@SpringBootApplication 
public class ContactRunner { 

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

Le spring-boot-starter-parent est dans le pom.xml, ainsi que celui du spring-boot-maven-plugin que d'autres personnes ayant des questions similaires ont résolu leur problème avec elle. Je ne peux pas comprendre ce qui se passe. Voici mon plein pom.xml

<?xml version="1.0" encoding="UTF-8"?> 
<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/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <!-- Output to jar format --> 
    <packaging>jar</packaging> 
    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starters</artifactId> 
     <version>1.5.7.RELEASE</version> 
    </parent> 
    <artifactId>NameProject</artifactId> 
    <name>Spring Boot Web Starter</name> 
    <description>Starter for building web, including RESTful, applications using Spring 
     MVC. Uses Tomcat as the default embedded container 
    </description> 
    <url>http://projects.spring.io/spring-boot/</url> 
    <organization> 
     <name>Pivotal Software, Inc.</name> 
     <url>http://www.spring.io</url> 
    </organization> 
    <properties> 
     <main.basedir>${basedir}/../..</main.basedir> 
    </properties> 

    <dependencyManagement> 
     <dependencies> 
      <dependency> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-starter-parent</artifactId> 
       <version>1.4.3.RELEASE</version> 
       <type>pom</type> 
       <scope>import</scope> 
      </dependency> 
     </dependencies> 
    </dependencyManagement> 
    <dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-tomcat</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-validator</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>com.fasterxml.jackson.core</groupId> 
      <artifactId>jackson-databind</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-webmvc</artifactId> 
     </dependency> 
     <!-- JPA Data (for using Repositories, Entities, Hibernate, etc...) --> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-data-jpa</artifactId> 
     </dependency> 
     <!-- Use MySQL Connector-J --> 
     <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
      <version>1.5.7.RELEASE</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-test</artifactId> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.h2database</groupId> 
      <artifactId>h2</artifactId> 
      <version>1.4.194</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-thymeleaf</artifactId> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
       <executions> 
        <execution> 
         <goals> 
          <goal>repackage</goal> 
         </goals> 
         <configuration> 
          <classifier>spring-boot</classifier> 
           <mainClass> 
            app.ContactRunner 
           </mainClass> 
         </configuration> 
        </execution> 
       </executions> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <configuration> 
        <source>1.8</source> 
        <target>1.8</target> 
       </configuration> 
      </plugin> 
     </plugins> 
     <testResources> 
      <testResource> 
       <directory>src/test/resources</directory> 
      </testResource> 
     </testResources> 
    </build> 

    <repositories> 
     <repository> 
      <id>spring-releases</id> 
      <url>https://repo.spring.io/libs-release</url> 
     </repository> 
    </repositories> 
    <pluginRepositories> 
     <pluginRepository> 
      <id>spring-releases</id> 
      <url>https://repo.spring.io/libs-release</url> 
     </pluginRepository> 
    </pluginRepositories> 
</project> 

J'ai aussi essayé de construire le projet avec mvn clean package mais il échoue à cause des dépendances en double que je ne peux pas sembler enlever, comme vous pouvez voir mes questions dans cette question, donc c'était essayer une autre route.

Des idées? L'application fonctionne bien dans IntelliJ, mais pas avec un pot.

Répondre

1

Je pense que vous devriez utiliser spring-boot-starter-parent dans le tag parent. Et devrait supprimer ensemble dependencyManagement bloc.

+0

A donné un coup de feu, mais il dit le même problème malheureusement. – NateH06

+0

La structure de votre package est-elle correcte? La classe '@ SpringBootApplication' des moyens devrait être dans le paquet supérieur. –

+0

Par exemple, laissez votre classe @SpringBootApplication est à l'intérieur d'un paquet a.b.c alors toutes les autres classes de stéréotypes de printemps devraient aller à l'intérieur a.b.c.x –