2015-01-21 11 views
12

Maven bauen gelungen starten, aber wenn ich nicht ausgeführt werden versuchen, es mit:kann nicht EmbeddedWebApplicationContext aufgrund fehlender EmbeddedServletContainerFactory Bohne

Error: Could not find or load main class app.jar 

Ich habe in resources/META-INF/MANIFEST.MF mit

Manifest-Version: 1.0 
Main-Class: go.Application 

Alles scheint an seinem Platz. Was ist los mit dir?

pom.xml

<build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-jar-plugin</artifactId> 
       <version>2.5</version> 
       <configuration> 
        <archive> 
         <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile> 
        </archive> 
       </configuration> 

      </plugin> 

     </plugins> 
    </build> 

UPDATE1

Die gleiche Geschichte, wenn sie mit IntelliJ jar Artefakt zu bauen.

UPDATE2

OK, schaffte ich es zu laufen, aber jetzt habe ich:

Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean. 

UPDATE3

Verstanden, indem zu Application.java arbeiten:

@Bean 
     public EmbeddedServletContainerFactory servletContainer() { 
      TomcatEmbeddedServletContainerFactory factory = new TomcatEmbeddedServletContainerFactory(); 
      return factory; 
     } 
+1

Wie beurteilen Sie die Anwendung starten? Scheint mir wie der Parameter '-jar' fehlt, wenn Java aufgerufen wird. –

+0

Wenn ich '-jar' hinzufüge, zeigt es einen anderen Fehler an' Jrfile konnte nicht angesprochen werden' –

+0

Das klingt nach einem falschen Pfad. Befindest du dich im richtigen Verzeichnis? –

Antwort

4

Ok, also war ich meinen Kopf darüber zu schlagen ... Ich hatte folgendes:

:

/** 
* Main class. 
*/ 
@SpringBootApplication 
public class Application { 

    /** 
    * Main entry point for the application. 
    * 
    * @param args The args to pass in 
    */ 
    public static void main(String[] args) { 
    SpringApplication.run(Application.class, args); 
    } 
} 

und alle meine Abhängigkeiten korrekt waren ..

Nach einer exhausive Suche, ich folgendes gefunden

http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#getting-started-first-application-executable-jar

da ich die Feder Boot Eltern wie meine Eltern nicht haben, hatte ich wie so die Ausführungen Abschnitt in meinem Plugin-Konfiguration enthalten:

 <plugin> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-maven-plugin</artifactId> 
     <configuration> 
      <mainClass>your.Application.fqdn.here</mainClass> 
      <layout>ZIP</layout> 
     </configuration> 
     <executions> 
      <execution> 
      <goals> 
       <goal>repackage</goal> 
      </goals> 
      </execution> 
     </executions> 
     </plugin> 

Im Folgenden finden Sie zusätzliche Informationen:

http://docs.spring.io/spring-boot/docs/1.4.0.BUILD-SNAPSHOT/maven-plugin/usage.html