打包SpringBoot工程並部署

  使用工具:Eclipsehtml

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

1、打包成jar並部署mysql

 

  步驟以下:linux

  首先上pom.xml:web

  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

  一、工程--右鍵選擇運行配置:spring

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

   

  二、編譯打包:工程-->Run As--> Maven build (編譯)---  Maven install(打包)apache

  三、獲取jar包:在工程下的target文件夾下找到打包的jar文件;windows

  四、部署:springboot工程打包jar部署只須要jre壞境便可:api

   文件結構以下:知足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

    五、啓動是按照狀況點擊startup

2、打包成war並部署:

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

    好像不起做用,待研究!  

    又試了一下,徹底按照官網是來是能夠的! 

   一、工程--pom.xml-->右鍵Run Config...  Goals輸入package

  

  二、若是正常的話,能夠在工程-target文件夾下找到打包好的war;

  三、部署:須要jre和tomcat,結構以下:

    

    war包放入tomcat文件夾中的webapps文件夾下;

    startup.bat:

set dir=%CD%
set JRE_HOME=%dir%\jre7
set JAVA_OPTS=-Dpm.home=%CD% -Dapp.home=%CD%
cd  %dir%\apache-tomcat-7\bin
startup

  startup.sh:所部署的機器必須有jre_home

CUR_PATH=$(cd "$(dirname "$0")"; pwd)
echo "Current path: ${CUR_PATH}"

cd ${CUR_PATH}/apache-tomcat-7/bin

export JAVA_OPTS="-Dpm.home=${CUR_PATH}"

./startup.sh start 

cd ${CUR_PATH}

  四、啓動,輸入...../pm/

------------------------------

  關於配置文件放到外部的狀況,正在研究......     

相關文章
相關標籤/搜索