zoukankan      html  css  js  c++  java
  • Maven项目jar和war部署

    Spring Boot可以打成jar包,也可以打成war包。启动方式类有main函数做为入口,比如:java -jar xxx.jar。Spring Boot默认内置Tomcat服务器,当然也可以将war包,部署到其他web容器中(Tomcat、weblogic等)。

    1、jar包
    pom.xml

    <groupId>com.test</groupId>
    <artifactId>demo</artifactId>
    <version>0.1.1-SNAPSHOT</version>
    <name>demo</name>
    ...
    <packaging>jar</packaging>
    ...

    最后的build也要有,不然会报 ”xxx.jar中没有主清单属性“的错
    <build>
    <plugins>
    <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>
    </plugins>
    </build>


    一、jar包
    1、生成jar包:
    在源代码根目录下,运行mvn package -Dmaven.test.skip=true,根据pom中的packaging值生成demo-0.1.1-SNAPSHOT.jar;参数:maven.test.skip=true 是不打包测试代码。

    2、运行:

    java -jar demo-0.1.1-SNAPSHOT.jar
    或后台运行
    nohup java -jar demo-0.1.1-SNAPSHOT.jar &

    二、war包

    1、pom.xml调整packaging为war,同时排除tomcat

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


    DemoApplication.java修改启动类,使其继承SpringBootServletInitializer,新增configure方法。其他不变。

    @SpringBootApplication
    public class DemoApplication extends SpringBootServletInitializer{

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

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
    return application.sources(DemoApplication.class);
    }

    }
    生成war包命令与jar包相同,生成后可以修改war包名称,比如:myspringboot.war,部署到其他应用服务器。
    运行war包,application.properties中配置的端口不起作用,将有应用服务器决定。

  • 相关阅读:
    Ubuntu 16.04 not a com32r image
    重定向输出遇到的缓冲问题
    you don't have permission to access / on this server解决
    LaTeX入门简介
    解决eclipse中出现Resource is out of sync with the file system问题
    Ubuntu安装新英伟达驱动出现问题解决方法
    同步与异步的区别
    Cuda入门笔记
    解决 Cocos2d-x 3.2 error C1041: 无法打开程序数据库vc120.pdb
    vs2013编译过程中,错误 59 error C4996: 'GetVersionExW': 被声明为已否决
  • 原文地址:https://www.cnblogs.com/cuiqq/p/11043505.html
Copyright © 2011-2022 走看看