打包SpringBoot工程并部署
来源:互联网 发布:python append和extend 编辑:程序博客网 时间:2024/05/16 06:00
原文地址:http://www.cnblogs.com/liangblog/p/6101797.html
使用工具: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>
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
好像不起作用,待研究!
又试了一下,完全按照官网是来是可以的!
1、工程--pom.xml-->右键Run Config... Goals输入package
2、如果正常的话,可以在工程-target文件夹下找到打包好的war;
3、部署:需要jre和tomcat,结构如下:
war包放入tomcat文件夹中的webapps文件夹下;
startup.bat:
set dir=%CD%set JRE_HOME=%dir%\jre7set JAVA_OPTS=-Dpm.home=%CD% -Dapp.home=%CD%cd %dir%\apache-tomcat-7\binstartup
startup.sh:所部署的机器必须有jre_home
CUR_PATH=$(cd "$(dirname "$0")"; pwd)echo "Current path: ${CUR_PATH}"cd ${CUR_PATH}/apache-tomcat-7/binexport JAVA_OPTS="-Dpm.home=${CUR_PATH}"./startup.sh start cd ${CUR_PATH}
4、启动,输入...../pm/
------------------------------
- 打包SpringBoot工程并部署
- SpringBoot 工程打包
- springboot程序打包部署
- springboot顶层工程,打包配置
- springboot(十二):springboot如何测试打包部署
- springboot(十二):springboot如何测试打包部署
- springboot(十二):springboot如何测试打包部署
- springboot(十二):springboot如何测试打包部署
- springboot(十二):springboot如何测试打包部署
- springboot如何测试打包部署
- springboot如何测试打包部署
- springboot如何测试打包部署
- springBoot工程的热部署
- Springboot项目打包成war包,并在tomcat下部署
- ant打包部署web工程
- ant打包部署web工程
- 一步一步学springboot (五)打包成标准的web工程war包可独立部署到tomcat或weblogic
- springboot打包docker镜像部署
- 单例的五种实现方式,及其性能分析(转)
- swift
- 统一PaaS架构支撑IT应用开发敏捷化
- POJ 2798 Hardwood Cutting 笔记
- node
- 打包SpringBoot工程并部署
- ELF文件-符号表
- [转]OrCAD Capture Error initializing COM property pages: 无效指针 For WIN7
- python中的random模块
- bzoj2957 楼房重建 线段树
- make menuconfig 显示的界面无内容.无法操作的解决办法
- spring boot application properties配置详解
- 大型分布式网站术语分析
- 读《Linux 设备驱动 Edition 3》第二天