打包SpringBoot工程并部署

  使用工具:Eclipse

  Linux下JDK版本:jdk-7u79-linux-x64.tar.gz

一、打包成jar并部署

  步骤如下:

  首先上pom.xml:

  1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3   <modelVersion>4.0.0</modelVersion>
  4
  5   <groupId>com.xxxe</groupId>
  6   <artifactId>programme</artifactId>
  7   <version>0.0.1</version>
  8   <packaging>jar</packaging>
  9
 10   <name>programme</name>
 11   <url>http://maven.apache.org</url>
 12   <properties>
 13     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 14     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
 15   </properties>
 16
 17     <parent>
 18         <groupId>org.springframework.boot</groupId>
 19         <artifactId>spring-boot-starter-parent</artifactId>
 20         <version>1.4.2.RELEASE</version>
 21     </parent>
 22
 23   <dependencies>
 24     <dependency>
 25         <groupId>org.springframework.boot</groupId>
 26         <artifactId>spring-boot-starter-web</artifactId>
 27     </dependency>
 28
 29
 30     <dependency>
 31       <groupId>junit</groupId>
 32       <artifactId>junit</artifactId>
 33       <scope>test</scope>
 34     </dependency>
 35     <dependency>
 36         <groupId>org.springframework.data</groupId>
 37         <artifactId>spring-data-commons</artifactId>
 38     </dependency>
 39     <dependency>
 40         <groupId>org.springframework.data</groupId>
 41         <artifactId>spring-data-jpa</artifactId>
 42     </dependency>
 43     <dependency>
 44         <groupId>org.springframework.data</groupId>
 45         <artifactId>spring-data-jdbc-core</artifactId>
 46         <version>1.2.1.RELEASE</version>
 47     </dependency>
 48     <dependency>
 49         <groupId>com.fasterxml.jackson.core</groupId>
 50         <artifactId>jackson-core</artifactId>
 51     </dependency>
 52     <dependency>
 53         <groupId>com.fasterxml.jackson.core</groupId>
 54         <artifactId>jackson-annotations</artifactId>
 55     </dependency>
 56     <dependency>
 57         <groupId>com.fasterxml.jackson.core</groupId>
 58         <artifactId>jackson-databind</artifactId>
 59     </dependency>
 60     <dependency>
 61         <groupId>org.slf4j</groupId>
 62         <artifactId>slf4j-api</artifactId>
 63     </dependency>
 64     <dependency>
 65         <groupId>org.apache.httpcomponents</groupId>
 66         <artifactId>httpcore</artifactId>
 67         </dependency>
 68     <dependency>
 69         <groupId>org.apache.httpcomponents</groupId>
 70         <artifactId>httpclient</artifactId>
 71         </dependency>
 72     <dependency>
 73         <groupId>org.apache.httpcomponents</groupId>
 74         <artifactId>httpmime</artifactId>
 75         </dependency>
 76     <dependency>
 77               <groupId>mysql</groupId>
 78               <artifactId>mysql-connector-java</artifactId>
 79           </dependency>
 80           <dependency>
 81             <groupId>org.springframework.boot</groupId>
 82             <artifactId>spring-boot-starter-jdbc</artifactId>
 83         </dependency>
 84
 85
 86           <dependency>
 87               <groupId>javax</groupId>
 88               <artifactId>javaee-api</artifactId>
 89               <version>7.0</version>
 90           </dependency>
 91           <dependency>
 92               <groupId>org.apache.shiro</groupId>
 93               <artifactId>shiro-spring</artifactId>
 94               <version>1.2.3</version>
 95           </dependency>
 96           <dependency>
 97               <groupId>org.apache.shiro</groupId>
 98               <artifactId>shiro-cas</artifactId>
 99               <version>1.2.3</version>
100           </dependency>
101           <dependency>
102               <groupId>org.apache.shiro</groupId>
103               <artifactId>shiro-ehcache</artifactId>
104               <version>1.2.3</version>
105           </dependency>
106           <dependency>
107               <groupId>org.springframework</groupId>
108               <artifactId>spring-jdbc</artifactId>
109               </dependency>
110           <dependency>
111               <groupId>org.apache.shiro</groupId>
112               <artifactId>shiro-core</artifactId>
113               <version>1.2.3</version>
114           </dependency>
115           <dependency>
116               <groupId>org.apache.shiro</groupId>
117               <artifactId>shiro-web</artifactId>
118               <version>1.2.3</version>
119           </dependency>
120           <dependency>
121               <groupId>org.jasig.cas.client</groupId>
122               <artifactId>cas-client-core</artifactId>
123               <version>3.4.1</version>
124           </dependency>
125
126           <!-- 模板引擎 暂时不用 -->
127          <!--  <dependency>
128             <groupId>org.springframework.boot</groupId>
129             <artifactId>spring-boot-starter-thymeleaf</artifactId>
130           </dependency> -->
131         <!--
132             devtools可以实现热部署。devtools会监听classpath下的文件变动,并且会立即重启应用(发生在保存时机),注意:因为其采用的虚拟机机制,该项重启是很快的
133             如果设置SpringApplication.setRegisterShutdownHook(false),则自动重启将不起作用。
134             设置 spring.devtools.restart.enabled 属性为false,可以关闭该特性。
135          -->
136
137         <dependency>
138             <groupId>org.springframework.boot</groupId>
139             <artifactId>spring-boot-devtools</artifactId>
140             <optional>true</optional>
141             <!-- optional=true,依赖不会传递,-->
142         </dependency>
143
144   </dependencies>
145
146    <!-- Package as an executable jar -->
147     <build>
148         <defaultGoal>compile</defaultGoal>
149         <plugins>
150             <plugin>
151                 <groupId>org.springframework.boot</groupId>
152                 <artifactId>spring-boot-maven-plugin</artifactId>
153                  <configuration>
154                     <jvmArguments>-Dfile.encoding=UTF-8</jvmArguments>
155                     <fork>true</fork><!-- 如果没有该项配置,可能devtools不会起作用 -->
156                 </configuration>
157             </plugin>
158
159         </plugins>
160     </build>
161
162     <!-- Add Spring repositories -->
163     <!-- (you don‘t need this if you are using a .RELEASE version) -->
164      <!--
165          <repositories>
166         <repository>
167             <id>spring-snapshots</id>
168             <url>http://repo.spring.io/snapshot</url>
169             <snapshots><enabled>true</enabled></snapshots>
170         </repository>
171         <repository>
172             <id>spring-milestones</id>
173             <url>http://repo.spring.io/milestone</url>
174         </repository>
175     </repositories>
176     <pluginRepositories>
177         <pluginRepository>
178             <id>spring-snapshots</id>
179             <url>http://repo.spring.io/snapshot</url>
180         </pluginRepository>
181         <pluginRepository>
182             <id>spring-milestones</id>
183             <url>http://repo.spring.io/milestone</url>
184         </pluginRepository>
185     </pluginRepositories>
186     -->
187
188 </project>

pom.xml

  1、工程--右键选择运行配置:

   在Goals中输入:org.apache.maven.plugins:maven-jar-plugin:2.4:jar org.springframework.boot:spring-boot-maven-plugin:1.0.1.RELEASE:repackage

   

  2、编译打包:工程-->Run As--> Maven build (编译)---  Maven install(打包)

  3、获取jar包:在工程下的target文件夹下找到打包的jar文件;

  4、部署:springboot工程打包jar部署只需要jre坏境即可:

   文件结构如下:满足linux与windows机器部署需要,使用不同的jre

   

    文件说明:

        dev:部署的工程.jar所在文件夹;

        jre7: windows下的jre环境

        jer7-linux:linux下的jre环境

        application.properties: 主要配置文件

        pm-logback.xml :日志配置文件

        startup.bat:Windows启动命令;

set dir=%CD%
set JRE_HOME=%dir%\jre7
%dir%\jre7\bin\java -jar %dir%\dev\pm.jar

        startup.sh :Linux启动命令:

CUR_PATH=$(cd "$(dirname "$0")"; pwd)
echo "Current path: ${CUR_PATH}"
${CUR_PATH}/jre7-linux/bin/java -jar ${CUR_PATH}/dev/pm.jar

    5、启动是按照情况点击startup

二、打包成war并部署:

    官网的说明:http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#build-tool-plugins-maven-packaging

    好像不起作用,待研究!   

    

时间: 2024-08-09 10:36:17

打包SpringBoot工程并部署的相关文章

SpringBoot工程+热部署进行远程调试

本文转载自:https://blog.csdn.net/qq_31868349/article/details/78553901 SpringBoot工程+热部署进行远程调试 本地端添加配置 在pom.xml文件添加配置: <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <config

SpringBoot工程热部署

SpringBoot工程热部署 1.在pom文件中添加热部署依赖 <!-- 热部署配置 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency> 2.修改配置 添加依赖后再启动项目我们发现并不起作用.出现这种情况,并不是热部署配置问题,其根本

Spring Boot 打war包并利用docBase指定根目录为打包的工程

指定根目录有两种方式 1:直接将打的war包名称定义为ROOT 2:利用docBase 比如笔者war包名为xibu.war,将该war包丢到/Users/archerlj/Library/apache-tomcat-8.5.8/webapps目录下即可.为了访问方便,我修改了tomcat安装目录下的conf文件下的server.xml文件: 在该文件最后的Host节点添加如下: <!-- path留空代表访问域名后面不需要带项目的名称 --> <Context path="&

IDEA下从零开始搭建SpringBoot工程

(1)它是Spring的升级版,Spring容器能做到的事情,它都能做到,而且更简便,从配置形式上来说,SpringBoot完全抛弃了繁琐的XML文件配置方式,而是替代性地用注解方式来实现,虽然本质来说,是差不多的(类似包扫描,注解扫描,类加载之类). (2)SpringBoot集成的插件更多,从而使用很多服务,都只是引入一个依赖,几个注解和Java类就可以用了,具体的参考相关手册. (3)在Web应用开发这一块,之前的应用一般来说是打包成war包,再发布到相关服务器容器下(例如Tomcat),

spring boot打包以及centos下部署

spring boot打包以及部署 一.打包 springboot的打包方式有很多种.有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的.这里主要介绍如何打成jar进行部署.不推荐用war,因为springboot适合前后端分离,打成jar进行部署更合适. 需要在pom.xml中增加主程序入口 <build> <plugins> <plugin> <groupId>org.springframework.boot<

SpringBoot(二)CentOS部署SpringBoot项目从0到1

在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomcat的安装,前面几篇文章实际上已经充分准备好了部署Linux的必要条件.那么今天来看看如何在CentOS部署SpringBoot,让你的SpringBoot在服务器上跑起来. vLinux部署springboot 从0到1,5步走,在Linux Tomcat部署springboot: 1. <CentOS

传统工程和springboot工程

传统创建工程的方法: 1.创建web工程 2.配置springmvc以及web.xml 3.编写Controller 4.部署tomcat springboot工程的创建方法: 在没有联网的情况下,依旧可以创建工程,创建一个空工程,自己导入依赖,创建启动类 1.创建一个空工程,导入依赖,依赖必须继承spring-boot-stater-parent <parent> <groupId>org.springframework.boot</groupId> <arti

Ant编译打包Android工程流程

一.Ant编译打包android工程步骤 二.Ant apk签名 1.keystore签名    定义自己的签名文件 生成keystore文件:keytool -genkey -alias android.keystore -keyalg RSA - validity 20000 -keystore android.keystore 对应的java命令:jarsigner -verbose -keystore android.keystore -signedjar android_signed.

?????使用??AdvancedInstaller打包web工程设置tomcat端口的方法

原文:?????使用??AdvancedInstaller打包web工程设置tomcat端口的方法 1.首先,要把你要打包的tomcat下的server.xml文件删掉,因为tomcat自带的server.xml无法与你在Advanced Installer添加的对话框中的编辑框相关联. 2.随便找个地方,只要不是在要打包的tomcat下就行,新建一个server.xml文件,内容可以直接复制tomcat下的server.xml文件的内容. 3.在AdvancedInstaller的Dialog