2017-08-23 27 views

回答

2

簡而言之,maven(就像你似乎使用的那樣)遵循這些步驟。你將需要實現servlet的初始化,像這樣:

@SpringBootApplication 
public class Application extends SpringBootServletInitializer { 
    @Override 
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { 
    return application.sources(Application.class); 
    } 

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

你可以離開主要方法,如果你的願望。從罐子

更改包裝,以戰爭的pom.xml:

<packaging>war</packaging> 

最後補充這種依賴性(pom.xml中):

<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-tomcat</artifactId> 
    <scope>provided</scope> 
</dependency> 
+0

我不得不離開主要方法的情況下,我嘗試刪除我得到這個異常 '執行目標失敗org.springframework.boot:spring-boot-maven-plugin:1.5.5.RELEASE:對項目重新打包(默認)Login-WS:目標執行缺省值org.springframework.boot :spring-boot-maven-plugin:1.5.5.RELEASE:重新包裝失敗:無法找到主要類有沒有辦法刪除它? –

+0

如果您不希望兩者都能夠使用嵌入式容器(例如從您的IDE)運行並部署到獨立應用程序容器(tomcat),那麼您只需刪除'spring-boot-maven-plugin'和main方法。以這種方式打包模塊時,可以將其部署到獨立的應用程序容器中。 – emirb