各模块tar包变war包教程
了解Linux命令的高级技巧使用tar和gzip命令进行文件打包和压缩
了解Linux命令的高级技巧使用tar和gzip命令进行文件打包和压缩在Linux系统中,tar和gzip命令是非常常用的文件打包和压缩命令。
掌握它们的高级技巧可以帮助我们更加高效地处理文件。
本文将介绍如何使用tar和gzip命令进行文件打包和压缩,并分享一些高级技巧。
一、tar命令的基本用法tar命令是Linux系统中常用的文件打包命令。
通过使用tar命令,可以将多个文件或目录打包成一个文件,以便于传输、备份或压缩。
1. 打包文件或目录:要将文件或目录进行打包,可以使用如下命令格式:tar -cf <打包文件名.tar> <要打包的文件或目录>例如,要将目录project打包成project.tar文件,可以运行以下命令:tar -cf project.tar project2. 查看文件列表:要查看打包文件中包含的文件列表,可以使用如下命令格式:tar -tf <打包文件名.tar>例如,要查看project.tar文件中包含的文件列表,可以运行以下命令:tar -tf project.tar3. 解包文件:要解包已打包的文件,可以使用如下命令格式:tar -xf <打包文件名.tar>例如,要解包project.tar文件,可以运行以下命令:tar -xf project.tar二、gzip命令的基本用法gzip命令是Linux系统中常用的文件压缩命令。
通过使用gzip命令,可以将文件进行压缩,以减小文件大小、节省存储空间,并方便文件传输。
1. 压缩文件:要压缩文件,可以使用如下命令格式:gzip <文件名>例如,要压缩project.tar文件,可以运行以下命令:gzip project.tar执行该命令后,会生成一个新的名为project.tar.gz的压缩文件。
2. 解压缩文件:要解压缩已压缩的文件,可以使用如下命令格式:gzip -d <压缩文件名.gz>例如,要解压缩project.tar.gz文件,可以运行以下命令:gzip -d project.tar.gz执行该命令后,会解压缩project.tar.gz文件,生成一个名为project.tar的打包文件。
Linux命令高级技巧利用tar命令进行文件与的高级打包与解压操作
Linux命令高级技巧利用tar命令进行文件与的高级打包与解压操作Linux命令高级技巧:利用tar命令进行高级文件打包与解压操作在Linux操作系统中,tar是一个非常重要的命令工具,用于进行文件的打包与解压操作。
本文将介绍一些高级技巧,帮助你更好地利用tar命令进行文件的打包与解压。
一、利用tar命令进行文件打包打包是将多个文件或目录打包成一个单独的文件的过程,它可以方便地进行文件的备份和传输。
使用tar命令进行文件打包可以通过以下步骤进行:1. 打包单个文件:使用以下命令将单个文件打包:```tar -cvf package.tar file1```该命令将file1文件打包,并将其保存为package.tar。
2. 打包多个文件:使用以下命令将多个文件打包:```tar -cvf package.tar file1 file2 file3```该命令将file1、file2和file3文件打包,并将其保存为package.tar。
3. 打包目录:使用以下命令将整个目录打包:```tar -cvf package.tar directory/```该命令将整个directory目录及其内容打包,并将其保存为package.tar。
二、利用tar命令进行文件解压解压是将打包的文件进行还原的过程,它可以将打包的文件恢复为原始的文件和目录结构。
使用tar命令进行文件解压可以通过以下步骤进行:1. 解压单个文件:使用以下命令将单个文件解压:```tar -xvf package.tar file1```该命令将package.tar中的file1文件解压。
2. 解压全部文件:使用以下命令将全部文件解压:```tar -xvf package.tar```该命令将package.tar中的所有文件解压。
3. 解压到指定目录:使用以下命令将文件解压到指定目录:```tar -xvf package.tar -C target_directory```该命令将package.tar中的文件解压到target_directory目录。
使用tar命令打包和解包文件和
使用tar命令打包和解包文件和tar命令是Linux及Unix系统中常用的文件打包和解包工具之一。
它可以将多个文件或目录打包成一个归档文件,并且可以通过解包还原出原始文件和目录结构。
本文将介绍tar命令的主要用法和一些常见的应用场景。
一、tar命令的基本用法1. 打包文件:要打包文件,可以使用tar命令的-c参数,结合-f参数指定归档文件名。
例如,要将当前目录下的所有文件打包成一个名为archive.tar的归档文件,可以执行以下命令:```shelltar -cf archive.tar *```2. 解包文件:要解包已经打包好的归档文件,可以使用tar命令的-x参数,结合-f 参数指定归档文件名。
例如,要解包名为archive.tar的归档文件,可以执行以下命令:```shelltar -xf archive.tar```3. 查看归档文件内容:要查看归档文件中包含的文件列表,可以使用tar命令的-t参数,结合-f参数指定归档文件名。
例如,要查看名为archive.tar的归档文件中包含的文件列表,可以执行以下命令:```shelltar -tf archive.tar```4. 同时打包和压缩文件:tar命令还支持和gzip、bzip2等压缩工具结合使用,以实现同时打包和压缩文件的功能。
例如,要将当前目录下的所有文件打包成一个名为archive.tar.gz的压缩包,可以执行以下命令:```shelltar -czf archive.tar.gz *```二、tar命令的高级用法1. 打包指定目录:如果只需要打包指定的目录或文件,可以在tar命令中指定路径。
例如,要打包指定目录/dir下的所有文件,可以执行以下命令:```shelltar -cf archive.tar /dir```2. 排除某些文件或目录:有时候我们希望在打包文件时排除某些文件或目录,可以使用tar 命令的--exclude参数。
使用tar命令在Linux终端中打包和解包文件
使用tar命令在Linux终端中打包和解包文件在Linux系统中,tar(tape archive,磁带归档)命令是一个非常有用的工具,它允许用户打包和解包文件和目录。
在本文中,我们将学习如何使用tar命令在Linux终端中进行文件的打包和解包操作。
一、打包文件要使用tar命令打包文件,你可以使用以下命令格式:tar -cvf <目标文件名>.tar <文件或目录>例如,假设我们要将名为"directory"的目录打包成一个名为"myarchive.tar"的文件,我们可以使用以下命令:tar -cvf myarchive.tar directory这个命令将会在当前目录下创建一个名为"myarchive.tar"的文件,并将"directory"目录及其所有内容打包进去。
在打包过程中,tar命令会显示每个文件的名称。
二、解包文件要解包一个已经打包的文件,你可以使用以下命令格式:tar -xvf <打包文件名>.tar例如,如果我们要解包名为"myarchive.tar"的文件,我们可以使用以下命令:tar -xvf myarchive.tar这个命令将会解包名为"myarchive.tar"的文件,并将其中的所有文件还原到当前目录中。
三、打包并压缩文件在实际应用中,经常需要将文件进行打包和压缩,以减小文件大小。
tar命令结合gzip压缩工具可以实现这一需求。
要将文件打包并压缩到一个gzip压缩文件中,你可以使用以下命令格式:tar -czvf <目标文件名>.tar.gz <文件或目录>例如,我们可以使用以下命令将名为"directory"的目录打包并压缩到一个名为"myarchive.tar.gz"的文件中:tar -czvf myarchive.tar.gz directory这个命令将会在当前目录下创建一个名为"myarchive.tar.gz"的文件,并将"directory"目录及其所有内容打包并压缩进去。
maven生成java程序war包
使用eclipse和maven生成java web程序war包一、eclipse中,在需要打包的项目名上右击,然后把鼠标光标指向弹出框中的“run as”:二、之后会看到在这个弹出框的右侧会出现一个悬浮窗,如下:三、在上边的第二个悬浮窗鼠标点击“maven clean”,maven会清除掉之前对这个项目的打包信息;执行以后在eclipse的控制台console会看到如下信息:四、然后重复一、二步,选择“maven build”,会看到如下弹出界面,在“Goals”后的文本框内输入“-X package”,勾选上下方的“update snapshots”和“skip tests”,然后点击右下方的“run”:五、Run之后可以看到eclipse控制台输出如下内容,代表打包成功:六、然后在项目名上右击,选择“refresh”刷新,再打开项目目录,可以看到在项目下的target下已经生成了一个“planSystem1.war”的文件,.war结尾,项目名开头:七、把这个.war结尾的文件拷贝到服务器中,例如tomcat的webapps目录下:八、启动tomcat服务器,然后就可以在浏览器中正常访问这个web项目了:九、更改过项目名后,maven打包注意事项:正常打包,生成的文件名就是项目名,但是如果我们更改过项目名,那么打包后的文件名依旧是之前的项目名,而不是更改后的;例如我把planSystem1项目名改为myPlanSystem,再打包,就会看到生成的文件依旧是planSystem1.war,如图:十、更改过项目名后,maven打包注意事项:这时候需要打开上图中另一个箭头所指的“pom.xml”修改一些东西,打开pom.xml,在如下界面中点击箭头所指的地方,在出现的代码区域搜索“finalName”,会看到finalName中间依旧是之前的项目名:十一、更改过项目名后,maven打包注意事项:把这里的名称改为更改之后的项目名,如图:十二、更改过项目名后,maven打包注意事项:保存后重新执行打包操作,之后再查看就会看到.war文件名已经成功变成了更改后的项目名:。
了解Linux命令的高级技巧使用tar命令进行文件打包和解压
了解Linux命令的高级技巧使用tar命令进行文件打包和解压了解Linux命令的高级技巧 - 使用tar命令进行文件打包和解压在Linux操作系统中,tar命令是一个非常强大的工具,它可以用于将多个文件或目录打包成一个归档文件,也可以将归档文件解压缩还原为原始文件。
本文将详细介绍使用tar命令进行文件打包和解压的高级技巧。
一、文件打包文件打包是将多个文件或目录打包成一个归档文件的过程,可以实现文件的备份、传输等功能。
使用tar命令进行文件打包非常简单,只需使用如下命令即可:tar -cvf 打包文件名.tar 文件/目录路径其中,“-c”参数表示创建归档文件,"v"参数表示在打包的过程中显示详细信息,"f"参数后跟打包后的文件名。
例如,要将目录/home/user 下的所有文件和文件夹打包成名为backup.tar的归档文件,可以使用以下命令:tar -cvf backup.tar /home/user打包过程中,tar命令会将文件和目录的名称、权限、时间戳等信息写入归档文件。
二、文件解压文件解压是将归档文件还原为原始文件或目录的过程。
使用tar命令进行文件解压同样很简单,只需使用如下命令即可:tar -xvf 归档文件.tar其中,“-x”参数表示解压归档文件,"v"参数表示在解压的过程中显示详细信息。
例如,要解压名为backup.tar的归档文件,可以使用以下命令:tar -xvf backup.tar解压过程中,tar命令会将归档文件中的文件和目录还原到当前目录下。
三、文件打包和解压的高级技巧除了基本的文件打包和解压功能,tar命令还提供了一些高级技巧,可以更加灵活地操作文件。
1. 使用通配符在打包和解压文件时,可以使用通配符来选择特定的文件或目录。
例如,要将目录/home/user下以.txt结尾的所有文件打包,可以使用以下命令:tar -cvf backup.tar /home/user/*.txt这样只会打包选择的文件,其他文件将被忽略。
怎样将web目录打包成war文件
1.最简单也是最复杂的方法
直接将所有文件复制到应用服务器相关目录下。
以Tomcat为例,直接复制到webapps下面即可。
此方法的缺点,如果要上传到远程服务器上,传输多个文件会比较慢,这时可以打包成war文件。
rem 设置jar路径
set path=d:\jsdk5.0\bin
mkdir myrelease
rem copy 必要的文件到myrelease
xcopy webroot myrealse /s
jar cvf appname.war -C myrealse .
rd /s /q myrelease
批处理或者shell做软件开发一定要掌握,因为他们最简单却很好用。
rem Example1
xcopy WebRoot\*.* webtemp\*.* /E /Y
2.用jar命令打包
新建一个war.cmd文件其内容如下: ห้องสมุดไป่ตู้
jar cvf appname.war -C webroot .
webroot就是包括所有WEB程序文件的文件夹,把这个文件放在webroot的上一级目录(一般就是你的工程目录),执行就可以了。如果一切顺利的话就这么简单,你会看到生成了appname.war。如果不顺利,象找不到jar文件,还有你不想把这个文件夹下的所有文件打包,你想创建不同的版本等等。那么可以这样:
如何使用Tomcat部署war包服务
如何使⽤Tomcat部署war包服务
⼀、安装Tomcat
进⼊上⾯地址后点击如下链接,我下载的是linux版的Tomcat8
⼆、把Tomcat的tar包上传⾄linux服务器并解压
解压命令:tar -zxvf apache-tomcat-8.5.55.tar.gz
三、 Tomcat的端⼝修改与jdk指定
1. 端⼝修改
进⼊Tomcat的配置⽂件⾥,路径如下:apache-tomcat-8.5.55/conf/server.xml
Vim模式打开该⽂件,英⽂输⼊法状态下按“Shift+;”,在输⼊“/”,在其后⾯输⼊“A "Connector" using the shared thread pool-->”然后回车,就能搜索到端⼝的配置所在,操作过程如下图:
如上图,Tomcat默认的是8080,我给修改成了8091,修改好了后保存退出
2. 给Tomcat单独指定jdk
进⼊Tomcat的bin⽬录,使⽤vim打开startup.sh,在配置前⾯加上你的jdk的路径,操作如下:
3. 启动Tomcat检查刚才的配置是否成功
单独指定的jdk成功
Tomcat的端⼝也修改成功
4 部署你的war包
下⾯我将部署jenkins的war,先把war包上传到Tomcat的webapps路径下,如下图:然后再进⼊回到bin⽬录,启动Tomcat。
Linux终端命令tar打包和解包文件
Linux终端命令tar打包和解包文件在Linux操作系统中,tar命令是一个非常常用的命令,它可以用来打包和解包文件。
通过tar命令,我们可以将多个文件或者目录打包成一个单独的文件,也可以解包已经打包过的文件。
下面将详细介绍如何使用tar命令进行打包和解包操作。
一、打包文件使用tar命令进行文件打包非常简单,我们只需要在终端中输入如下命令即可:```tar -cvf 打包文件名.tar 要打包的文件或目录```其中,-c用来表示打包操作,-v表示显示详细的打包过程,-f后跟打包后的文件名,最后是要打包的文件或者目录的路径。
例如,如果我们要将文件夹my_files打包成一个名为my_files.tar的文件,我们可以输入以下命令:```tar -cvf my_files.tar my_files```在执行完上述命令后,系统将开始打包操作,并输出打包的详细过程。
一旦打包完成,我们就可以在当前目录下看到生成的my_files.tar文件。
二、解包文件解包操作同样也非常简单,我们只需要在终端中输入如下命令即可:```tar -xvf 打包文件名.tar```其中,-x用来表示解包操作,-v表示显示详细的解包过程,-f后跟要解包的文件名。
例如,如果我们要解包名为my_files.tar的文件,我们可以输入以下命令:```tar -xvf my_files.tar```在执行完上述命令后,系统将开始解包操作,并输出解包的详细过程。
一旦解包完成,我们就可以在当前目录下看到解包后的文件或者目录。
三、打包和压缩文件如果我们需要将文件打包的同时进行压缩,tar命令也提供了相关选项。
我们可以使用以下命令:```tar -czvf 打包文件名.tar.gz 要打包的文件或目录```其中,-z表示使用gzip算法进行压缩操作,-c表示打包操作,-v表示显示详细的打包过程,-f后跟打包后的文件名,最后是要打包的文件或者目录的路径。
如何把java项目打包成war包
如何把java项⽬打包成war包⽤Eclipse⼿动打包
1. 右击⼯程名
2. 选择Export…
3. 选择Web → WAR file
4. 点击Browse,选择导出路径
然后war包就被导出来啦~是不是很简单呢
利⽤Maven的package命令导出
1. ⾸先需要你这个⼯程本⾝就是MAVEN项⽬,然后右击⼯程
2. ⿏标移动到Debug As栏选择 Maven install
1. 当我们看到BUILD SUCCESS的时候,就代表着⼯程已经通过编译啦,然后右击⼯程,选择Debug As → Maven clean, 删除maven⼯程
的target⽬录下的内容。
2. 然后我们还是会看到BUILD SUCCESS等字样,这时候就可以(注意!注意!这步⼀定要做!)更新⼯程信息了
右击⼯程 Maven → Update Project,然后点击OK就⾏了
3. 上述操作做完之后,我们就可以开始打包啦
右击⼯程 Debug As → Maven build…
在Goals框内输⼊ package 命令,点击Debug,即可打包
4. 这时候我们找到⼯程路径下的 targer ⽂件夹,就会发现war包已经被导出来啦~。
idea 生成war的步骤
idea 生成war的步骤生成一个WAR(Web Application Archive)文件通常涉及以下步骤:1. 编写代码,首先,你需要编写你的Web应用程序的代码。
这可能涉及使用Java、Servlet、JSP、HTML、CSS、JavaScript等技术来开发你的Web应用程序。
2. 配置构建工具,你需要配置一个构建工具,比如Maven或者Gradle来管理你的项目并构建WAR文件。
在项目根目录下创建一个适当的构建文件(比如pom.xml或build.gradle),并配置项目依赖、插件和构建目标。
3. 编写构建脚本,根据你选择的构建工具,你需要编写构建脚本来定义如何构建WAR文件。
这可能涉及指定项目的结构、资源文件的位置、编译选项、打包方式等。
4. 编译代码,使用构建工具执行编译命令,将你的源代码编译成可执行的文件。
构建工具会根据你的配置将编译后的文件放置到适当的目录中。
5. 打包资源文件,将Web应用程序的资源文件(比如HTML、JSP、CSS、JavaScript、图片等)放置到适当的目录中,这些资源文件将会被包含在WAR文件中。
6. 打包WAR文件,使用构建工具执行打包命令,将编译后的类文件和资源文件打包成WAR文件。
构建工具会根据你的配置将WAR文件放置到指定的目录中。
7. 测试WAR文件,在生成WAR文件之后,你应该进行一些测试来确保WAR文件可以正常部署和运行。
这可能涉及在本地环境或者测试服务器上部署WAR文件并进行功能测试、性能测试等。
8. 部署WAR文件,一旦WAR文件通过了测试,你可以将它部署到生产环境中的应用服务器(比如Tomcat、Jetty、WebLogic等)中运行。
总之,生成WAR文件涉及到代码编写、构建工具配置、编写构建脚本、编译代码、打包资源文件、打包WAR文件、测试WAR文件和部署WAR文件等多个步骤。
每个步骤都需要仔细考虑和正确执行,以确保最终生成的WAR文件能够正常运行。
详解如何将springboot项目导出成war包
详解如何将springboot项⽬导出成war包以demo-3项⽬为例:1.将pom.xml中的jar改成war2.添加依赖<dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><scope>provided</scope></dependency>3.移除插件如果已经嵌⼊了tomcat插件,还要移除tomcat插件(我⽤的2.06的springboot版本没移除也⾏,可能⽼版本需要移除,可以移除不移除都试试)<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><!-- 移除嵌⼊式tomcat插件 --><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></exclusion></exclusions></dependency>4. 在根⽬录下新建类新的类继承,并将之前的启动类写进sources中.然后右键点击项⽬,点击export即可打包成war输出到此这篇关于详解如何将springboot项⽬导出成war包的⽂章就介绍到这了,更多相关springboot导出成war包内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
各模块tar包变war包教程
1.添加servlet依赖,关注红色部分必须的,<dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency>2.对javax.el包添加<scope>provided</scope><dependency><groupId>org.glassfish</groupId><artifactId>javax.el</artifactId><version>${el.version}</version><scope>provided</scope></dependency>以pss为例红色部分就是添加的部分<?xml version="1.0" encoding="UTF-8"?><project xmlns="/POM/4.0.0"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/POM/4.0.0/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.bestpay.old-settle-system</groupId><artifactId>old-settle-system</artifactId><packaging>pom</packaging><version>1.0.8-150812</version><modules><module>pss-common</module><module>pss-persistence-api</module><module>pss-persistence</module><module>pss-service</module><module>bppf-packs</module></modules><properties><javax.servlet-api.version>3.1.0</javax.servlet-api.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.version>3.2.5.RELEASE</spring.version><junit.version>4.11</junit.version><guava.version>15.0</guava.version><jsr305.version>2.0.0</jsr305.version><mybatis.version>3.1.1</mybatis.version><mybatis-spring.version>1.1.1</mybatis-spring.version><cglib.version>2.2.2</cglib.version><commons-pool.version>1.6</commons-pool.version><commons-io.version>2.0.1</commons-io.version><commons-lang.version>2.5</commons-lang.version><jackson.version>2.2.2</jackson.version><validation-api.version>1.0.0.GA</validation-api.version><joda-time.version>2.3</joda-time.version><hamcrest.version>1.3</hamcrest.version><lombok.version>1.16.4</lombok.version><handlebars.version>1.0.0</handlebars.version><aspectj.version>1.7.0</aspectj.version><dozer.version>5.4.0</dozer.version><jackson-datatype-guava.version>2.2.2</jackson-datatype-guava.version><slf4j.version>1.7.5</slf4j.version><logback.version>1.0.13</logback.version><log4j.version>1.2.17</log4j.version><dubbo.version>2.4.10</dubbo.version><zkclient.version>0.1</zkclient.version><ojdbc.version>11.2.0.1.0</ojdbc.version><commons-logging.version>1.1.1</commons-logging.version><dom4j.version>1.6.1</dom4j.version><jaxen.version>1.1.1</jaxen.version><mockito.version>1.8.5</mockito.version><durid.version>1.0.2</durid.version><el.version>3.0-b01</el.version><hibernate.version>5.0.1.Final</hibernate.version><validation-api.version>1.1.0.Final</validation-api.version><spring.integration.version>3.0.1.RELEASE</spring.integration.version><quartz.version>1.8.5</quartz.version><commons-lang3.version>3.1</commons-lang3.version><c3p0.version>0.9.1.2</c3p0.version><jasypt.version>1.9.2</jasypt.version><aspectjweaver.version>1.7.0</aspectjweaver.version><commons-collections.version>3.2</commons-collections.version><spring-rabbit.version>1.2.0.RELEASE</spring-rabbit.version><!--内部模块依赖--><bpep-validator.version>1.0.9-150812</bpep-validator.version><pss-common.version>1.0.8-150812</pss-common.version><pss-persistence.version>1.0.8-150812</pss-persistence.version><pss-persistence-api.version>1.0.8-150812</pss-persistence-api.version><bestpay-foundation.version>1.0.9-150812</bestpay-foundation.version><pgw-service-api.version>1.1.6-150923</pgw-service-api.version><pss-bppf-packs.version>1.0.8-150812</pss-bppf-packs.version><pay-foundation-service-api.version>1.1.4-150812</pay-foundation-service-api.version><assist-persistence-api.version>1.0.5-150812</assist-persistence-api.version> <!--内部模块依赖--></properties><build><pluginManagement><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><source>1.7</source><target>1.7</target><!--<compilerArgs>--><!--<compilerArg>-Xlint:unchecked</compilerArg>--><!--</compilerArgs>--></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>2.17</version><configuration><skipTests>false</skipTests><argLine>-XX:-UseSplitVerifier</argLine></configuration></plugin></plugins></pluginManagement><plugins><plugin><artifactId>maven-surefire-plugin</artifactId></plugin><plugin><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><encoding>UTF-8</encoding></configuration></plugin></plugins></build><dependencyManagement><dependencies><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${joda-time.version}</version></dependency><dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>${guava.version}</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>dubbo</artifactId><version>${dubbo.version}</version><exclusions><exclusion><groupId>org.springframework</groupId><artifactId>spring</artifactId></exclusion><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aop</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework.integration</groupId> <artifactId>spring-integration-core</artifactId><version>${spring.integration.version}</version></dependency><dependency><groupId>org.springframework.integration</groupId> <artifactId>spring-integration-stream</artifactId><version>${spring.integration.version}</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>${aspectj.version}</version></dependency><!--log related begin --><dependency><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId><version>${slf4j.version}</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>${slf4j.version}</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>${logback.version}</version><scope>runtime</scope></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-core</artifactId><version>${logback.version}</version></dependency><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>${commons-logging.version}</version></dependency><dependency><groupId>com.github.sgroschupf</groupId><artifactId>zkclient</artifactId><version>${zkclient.version}</version><exclusions><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion></exclusions></dependency><dependency><groupId>com.oracle</groupId><artifactId>ojdbc6</artifactId><version>${ojdbc.version}</version><scope>runtime</scope></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>${mybatis.version}</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>${mybatis-spring.version}</version> </dependency><dependency><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId><version>${commons-lang.version}</version> </dependency><dependency><groupId>dom4j</groupId><artifactId>dom4j</artifactId><version>${dom4j.version}</version></dependency><dependency><groupId>jaxen</groupId><artifactId>jaxen</artifactId><version>${jaxen.version}</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>${junit.version}</version></dependency><dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><version>${hamcrest.version}</version><scope>test</scope></dependency><dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-library</artifactId><version>${hamcrest.version}</version><scope>test</scope></dependency><dependency><groupId>org.mockito</groupId><artifactId>mockito-all</artifactId><version>${mockito.version}</version><scope>test</scope></dependency><dependency><groupId>net.sf.dozer</groupId><artifactId>dozer</artifactId><version>${dozer.version}</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>${lombok.version}</version></dependency><dependency><groupId>org.glassfish</groupId><artifactId>javax.el</artifactId><version>${el.version}</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>${javax.servlet-api.version}</version><scope>provided</scope></dependency><dependency><groupId>com.bestpay</groupId><artifactId>bestpay-foundation</artifactId><version>${bestpay-foundation.version}</version> <exclusions><exclusion><artifactId>javax.el</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-validator</artifactId><version>${hibernate.version}</version></dependency><dependency><groupId>com.bestpay</groupId><artifactId>bpep-validator</artifactId><version>${bpep-validator.version}</version> </dependency><dependency><groupId>javax.validation</groupId><artifactId>validation-api</artifactId><version>${validation-api.version}</version> </dependency><dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId><version>${quartz.version}</version></dependency><dependency><groupId>mons</groupId><artifactId>commons-lang3</artifactId><version>${commons-lang3.version}</version> </dependency><dependency><groupId>c3p0</groupId><artifactId>c3p0</artifactId><version>${c3p0.version}</version></dependency><dependency><groupId>org.jasypt</groupId><artifactId>jasypt</artifactId><version>${jasypt.version}</version></dependency></dependencies></dependencyManagement><dependencies><dependency><artifactId>javax.servlet-api</artifactId> </dependency><dependency><groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId></dependency><dependency><groupId>com.google.guava</groupId> <artifactId>guava</artifactId></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency><!--slf4j依赖api start--><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId></dependency><!--支持log4j依赖api start--><dependency><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId> </dependency><!--支持log4j依赖api end--><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-core</artifactId></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId> <scope>runtime</scope></dependency><dependency><groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </dependency><!--slf4j依赖api end--><dependency><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId> </dependency><!--<dependency><groupId>log4j</groupId><artifactId>log4j</artifactId></dependency>--><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency><dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><scope>test</scope></dependency><dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-library</artifactId> <scope>test</scope></dependency><dependency><groupId>org.springframework</groupId> <artifactId>spring-test</artifactId><version>${spring.version}</version><scope>test</scope></dependency><dependency><groupId>org.mockito</groupId><artifactId>mockito-all</artifactId><scope>test</scope></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-validator</artifactId> </dependency><dependency><groupId>com.bestpay</groupId><artifactId>bpep-validator</artifactId></dependency><dependency><groupId>javax.validation</groupId><artifactId>validation-api</artifactId></dependency><dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>${spring.version}</version></dependency><dependency><groupId>mons</groupId><artifactId>commons-lang3</artifactId></dependency><dependency><groupId>com.bestpay</groupId><artifactId>bestpay-foundation</artifactId><version>${bestpay-foundation.version}</version></dependency></dependencies><repositories><repository><id>bestpay</id><name>bestpay</name><!--必须要配置域名,测试环境自动化部署的IP与本地IP不同--> <url>http://172.26.7.12:8081/nexus/content/groups/public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository><repository><id>center</id><name>Maven Repository Switchboard</name><!--必须要配置域名,测试环境自动化部署的IP与本地IP不同--> <url></url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories><distributionManagement><id>releases</id><name>Nexus Release Repository</name><url>http://172.26.7.12:8081/nexus/content/repositories/releases/</url></repository><snapshotRepository><id>snapshots</id><name>Nexus Snapshot Repository</name><url>http://172.26.7.12:8081/nexus/content/repositories/snapshots/</url></snapshotRepository></distributionManagement></project>3.修改文件descriptor.xml,关注红色部分<assemblyxmlns="/plugins/maven-assembly-plugin/assembly/1.1.0" xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/plugins/maven-assembly-plugin/assembly/1.1.0 /xsd/assembly-1.1.0.xsd"><id>${mavenDir}-assembly</id><formats><format>war</format></formats><includeBaseDirectory>false</includeBaseDirectory><fileSets><fileSet><directory>${project.basedir}/src/main/resources</directory><includes><include>**/*.xml</include></includes><excludes><exclude>/assemble/**</exclude></excludes><outputDirectory>WEB-INF/classes</outputDirectory></fileSet><fileSet><directory>${project.basedir}/../pss-persistence/src/main/resources</directory><includes><include>**/*.xml</include></includes><exclude>/assemble/**</exclude></excludes><outputDirectory>WEB-INF/classes</outputDirectory></fileSet><fileSet><directory>${project.basedir}/src/main/log</directory><outputDirectory>log</outputDirectory></fileSet><!--<fileSet>--><!--<directory>${project.basedir}/src/main/resources/script</directory>--><!--<includes>--><!--<include>startup.sh</include>--><!--</includes>--><!--<outputDirectory>/</outputDirectory>--><!--<fileMode>0755</fileMode>--><!--<lineEnding>unix</lineEnding>--><!--</fileSet>--></fileSets><files><!--<file>--><!--<source>${project.basedir}/src/main/resources/script/conf/setenv-${mavenDir}.conf</source >--><!--<outputDirectory>config</outputDirectory>--><!--<destName>setenv.conf</destName>--><!--<lineEnding>unix</lineEnding>--><!--</file>--><file><source>${project.basedir}/src/main/resources/properties/${mavenDir}/app.properties</source ><outputDirectory>WEB-INF/classes/properties/</outputDirectory><destName>app.properties</destName></file></files><dependencySets><dependencySet><outputDirectory>WEB-INF/lib</outputDirectory><excludes><exclude>org.apache.maven:*</exclude><exclude>org.codehaus.plexus:*</exclude><exclude>org.apache.maven.wagon:*</exclude><exclude>org.apache.maven.surefire:*</exclude><exclude>org.apache.maven.plugins:*</exclude><exclude>junit:*</exclude></dependencySet></dependencySets></assembly>4.添加BootstrapListener.java文件,关注红色部分packagecom.bestpay.pss.bootstrap;import lombok.extern.slf4j.Slf4j;import org.springframework.context.support.ClassPathXmlApplicationContext;importjavax.servlet.ServletContextEvent;importjavax.servlet.ServletContextListener;importjavax.servlet.annotation.WebListener;/*** Created by aokage* Administrator on* Date: 14-3-24.*/@Slf4j@WebListenerpublic final class BootstrapListener implements ServletContextListener {publicBootstrapListener() {}privateClassPathXmlApplicationContext context;/*** Start the service.*/protected void startUp() throws Exception {context = new ClassPathXmlApplicationContext(new String[]{"spring/pss-spring-context.xml"});context.start();context.registerShutdownHook();ZkStandbyInit.start(context);("pss service started successfully");}/*** Stop the service.*/protected void shutDown() throws Exception {context.stop();("service stopped successfully");}@Overridepublic void contextInitialized(ServletContextEventservletContextEvent) { ("pss service started ");try {startUp();} catch (Exception ex) {log.error("ignore interruption ");}}@Overridepublic void contextDestroyed(ServletContextEventservletContextEvent) { try {shutDown();} catch (Exception e) {e.printStackTrace();}}}。
SpringBoot把项目打成war包流程
SpringBoot把项⽬打成war包流程SpringBoot 把项⽬打成war包流程记录1.修改pom.xml⽂件<!--打war的时候需要--><packaging>war</packaging><!--<packaging>jar</packaging>--><!--最终打成war包,排除内置的tomcat--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><!--打war的时候需要--><!--移除内置tomcat--><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></exclusion></exclusions></dependency><!--打war的时候需要--><!--添加⼀个tomcat的依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope></dependency><!--打war的时候需要--><!--添加servlet-api的依赖,⽤来打war包 --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><scope>provided</scope></dependency>2.配置类/*** 部署war包*/@Configurationpublic class WarConfig extends SpringBootServletInitializer {//注意,这⾥的DemoApplication是启动类@Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder application) {return application.sources(DemoApplication.class);}}3.最后在Maven中双击package⽣成war包。
EclipseWeb项目打成war包的方法图解
EclipseWeb项目打成 war包的方法图解
war包即Web归档文件,将Web项目打成war包可以直接拷贝到Web服务器发布目录(例如Tomcat服务器webapps目录 ), 当Tomcat启动后该压缩文件自动解压缩,war包方便了web工程的发布,那么在Eclipse中如何将Web项目打成war包呢?
1、有如下venus工程:
2、鼠标选中venus工程并点击鼠标右键,出现下图:
3、鼠标箭头滑到Export选项——>Export...,点击“Export...”,出现下图:
4、点击上图“Web”节点,得到下图: 5、选中上图“WAR file‘子节点,然后点击”Next>“按钮,“按钮选择war文件保存位置,然后点击”Finish“按钮即可将Web工程打成war文件。
Tomcat服务器部署JavaWeb项目War包基本步骤
Tomcat服务器部署JavaWeb项⽬War包基本步骤1. 基本常识:1.1 War包War包⼀般是在进⾏Web开发时,通常是⼀个⽹站Project下的所有源码的集合,⾥⾯包含前台HTML/CSS/JS的代码,也包含Java的代码。
(项⽬已经开放结束,基本很少改动)当开发⼈员在⾃⼰的开发机器上调试所有代码并通过后,为了交给测试⼈员测试和未来进⾏产品发布,都需要将开发⼈员的源码打包成War 进⾏发布。
War包可以放在Tomcat下的webapps或者word⽬录下,随着tomcat服务器的启动,它可以⾃动被解压。
Jar⽂件(扩展名为. Jar,Java Application Archive)包含类的普通库、资源(resources)、辅助⽂件(auxiliary files)等 War⽂件(扩展名为.War,Web Application Archive)包含全部Web应⽤程序。
在这种情形下,⼀个Web应⽤程序被定义为单独的⼀组⽂件、类和资源,⽤户可以对jar⽂件进⾏封装,并把它作为⼩型服务程序(servlet)来访问。
Ear⽂件(扩展名为.Ear,Enterprise Application Archive)包含全部企业应⽤程序。
在这种情形下,⼀个企业应⽤程序被定义为多个jar⽂件、资源、类和Web应⽤程序的集合。
JAR WAR EAR英⽂Java Archive file Web Archive file Enterprise Archive file包含内容class、properties⽂件,是⽂件封装的最⼩单元;包含Java类的普通库、资源(resources)、辅助⽂件(auxiliary files)等Servlet、JSP页⾯、JSP标记库、JAR库⽂件、HTML/XML⽂档和其他公⽤资源⽂件,如图⽚、⾳频⽂件等除了包含JAR、WAR以外,还包括EJB组件部署⽂件application-client.xml web.xml application.xml容器应⽤服务器(application servers)⼩型服务程序容器(servlet containers)EJB容器(EJB containers)级别⼩中⼤1.2 Tomcat服务器Tomcat 服务器是⼀个免费的开放源代码的Web 应⽤服务器,属于轻量级应⽤,在中⼩型系统和并发访问⽤户不是很多的场合下被普遍使⽤,是开发和调试JSP 程序的⾸选。
Linuxtar打包命令使用方法
Linux tar打包命令使用方法linux多个文件压缩打包到一个压缩文件,可以利用tar打包命令实现,那么tar打包命令怎么使用呢?下面跟着店铺一起来了解一下吧。
tar打包命令使用方法常用格式:单个文件压缩打包 tar czvf my.tar.gz file1多个文件压缩打包 tar czvf my.tar.gz file1 file2,...(file*)(也可以给file*文件mv 目录在压缩)单个目录压缩打包 tar czvf my.tar.gz dir1多个目录压缩打包 tar czvf my.tar.gz dir1 dir2解包至当前目录:tar xzvf my.tar.gzcpio含子目录find x* | cpio -o > /y/z.cpio不含子目录ls x* | cpio -o > /y/z.cpio解包: cpio -i < /y/z.cpio[root@linux ~]# tar [-cxtzjvfpPN] 文件与目录 ....参数:-c :建立一个压缩文件的参数指令(create 的意思);-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的文件!特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成『 tar -zcvPf tfile sfile』才对喔!-p :使用原文件的原来属性(属性不会依据使用者而变)-P :可以使用绝对路径来压缩!-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!--exclude FILE:在压缩的过程中,不要将 FILE 打包!范例:范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar[root@linux ~]# tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩![root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以gzip 压缩[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
IDEA2018.3.2将项目打war包2种方法
IDEA2018.3.2将项目打war包2种方法展开全文IDEA版本 2018.3.2文章目录•方法一o步骤一o步骤二o生成war包的位置•方法二o步骤一o步骤二o步骤三o步骤四o步骤五o步骤六o步骤七o步骤八方法一步骤一在Artifacts中选择加号.按照如图画框的方式选择.步骤二默认生成的是如下的文件名, 需要进行删除掉:war. 因为:war是多余的删除后如图所示.在下图中,有个include in project build勾选框.代表的是每次运行项目的时候,就生成该war包不建议勾选上,会导致每次运行项目很慢.在顶部的菜单栏选择build. 选择Build Artifact之后选择对应的Artifact 选择Build,等待片刻后,即可完成生成war 包生成war包的位置生成war包的位置如下图在对应的目录中,即可找到相应的war包方法二步骤一如下图所示 , 在WebApplication:Archive中选择Empty步骤二选中如下图的红圈步骤三选择Directory Content步骤四在弹出的框中选择WebContent目录步骤五再次点击选中war包步骤六点击加号文件夹.创建WEB-INF文件夹及其下面的classes子文件夹步骤七选中classes文件夹点击加号选择 Module Output自动弹出当前的工程模块,选择OK即可之后生成的如图所示步骤八给war包重命名.在上面的操作中war包的名称都是unnamed. 需要进行重命名我重命名为了工程的名称.之后生成war包的步骤,以及查找war 的位置,都与方法一相同参考文章https:///lhp3000/article/details/78994010 https:///zengpeng/p/9968244.html。
springboot项目打成war包
springboot项⽬打成war包
总共修改两个⽂件:
1:pom.xml⽂件。
2:springboot的启动类。
具体修改步骤:
1:springboot项⽬,默认的打包⽅式是jar包,将pom.xml⽂件头部的jar改成war
pic-1590656512007.png
(要是没有<packaging></packaging>标签,那么就是默认jar打包⽅式,⼿动添加该标签)
2:因为springboot有内置的tomcat,打成war包是依赖于外⾯的tomcat运⾏的,所以这⾥添加依赖进⾏忽略springboot内置tomcat
pic-1590656512009.png
3:修改启动类,如下:
pic-1590656512010.png
继承SpringBootServletInitializer类,并且重写configure⽅法。
需要注意的是,打成war包之后,springboot的配置⽂件⾥的server.port(设置应⽤端⼝号)和server.servlet.context-path(springboot 2.0.x,设置应⽤上下⽂)或者server.context-path(springboot 1.5.x 设置应⽤上下⽂)失效
server.servlet-path或server.servlet.path是有⽤的。
server.port由tomcat的config⽬录下的server.xml配置⽂件决定
server.context-path或server.servlet.context-path由webapps⽬录下的项⽬名决定。
SpringBoot项目如何将jar包打包成war包
</exclusion> </exclusions> </dependency> <!-- servlet-api的依赖 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency>
</build>
5、jar包运行方式
//在linux环境下或者cmd命令窗口中 //这种非后台运行
java -jar xxx.jar //后台运行
nohup java -jar xxx.jar &
6、war包运行方式
//waeapps目录下运行war包 //启动tomcat cd ../bin/sh start.sh
@Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意这里要指向原先用main方法执行的Application启动类 return builder.sources(XXXApplication.class); } }
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.添加servlet依赖,关注红色部分必须的,<dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency>2.对javax.el包添加<scope>provided</scope><dependency><groupId>org.glassfish</groupId><artifactId>javax.el</artifactId><version>${el.version}</version><scope>provided</scope></dependency>以pss为例红色部分就是添加的部分<?xml version="1.0" encoding="UTF-8"?><project xmlns="/POM/4.0.0"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/POM/4.0.0/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.bestpay.old-settle-system</groupId><artifactId>old-settle-system</artifactId><packaging>pom</packaging><version>1.0.8-150812</version><modules><module>pss-common</module><module>pss-persistence-api</module><module>pss-persistence</module><module>pss-service</module><module>bppf-packs</module></modules><properties><javax.servlet-api.version>3.1.0</javax.servlet-api.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.version>3.2.5.RELEASE</spring.version><junit.version>4.11</junit.version><guava.version>15.0</guava.version><jsr305.version>2.0.0</jsr305.version><mybatis.version>3.1.1</mybatis.version><mybatis-spring.version>1.1.1</mybatis-spring.version><cglib.version>2.2.2</cglib.version><commons-pool.version>1.6</commons-pool.version><commons-io.version>2.0.1</commons-io.version><commons-lang.version>2.5</commons-lang.version><jackson.version>2.2.2</jackson.version><validation-api.version>1.0.0.GA</validation-api.version><joda-time.version>2.3</joda-time.version><hamcrest.version>1.3</hamcrest.version><lombok.version>1.16.4</lombok.version><handlebars.version>1.0.0</handlebars.version><aspectj.version>1.7.0</aspectj.version><dozer.version>5.4.0</dozer.version><jackson-datatype-guava.version>2.2.2</jackson-datatype-guava.version><slf4j.version>1.7.5</slf4j.version><logback.version>1.0.13</logback.version><log4j.version>1.2.17</log4j.version><dubbo.version>2.4.10</dubbo.version><zkclient.version>0.1</zkclient.version><ojdbc.version>11.2.0.1.0</ojdbc.version><commons-logging.version>1.1.1</commons-logging.version><dom4j.version>1.6.1</dom4j.version><jaxen.version>1.1.1</jaxen.version><mockito.version>1.8.5</mockito.version><durid.version>1.0.2</durid.version><el.version>3.0-b01</el.version><hibernate.version>5.0.1.Final</hibernate.version><validation-api.version>1.1.0.Final</validation-api.version><spring.integration.version>3.0.1.RELEASE</spring.integration.version><quartz.version>1.8.5</quartz.version><commons-lang3.version>3.1</commons-lang3.version><c3p0.version>0.9.1.2</c3p0.version><jasypt.version>1.9.2</jasypt.version><aspectjweaver.version>1.7.0</aspectjweaver.version><commons-collections.version>3.2</commons-collections.version><spring-rabbit.version>1.2.0.RELEASE</spring-rabbit.version><!--内部模块依赖--><bpep-validator.version>1.0.9-150812</bpep-validator.version><pss-common.version>1.0.8-150812</pss-common.version><pss-persistence.version>1.0.8-150812</pss-persistence.version><pss-persistence-api.version>1.0.8-150812</pss-persistence-api.version><bestpay-foundation.version>1.0.9-150812</bestpay-foundation.version><pgw-service-api.version>1.1.6-150923</pgw-service-api.version><pss-bppf-packs.version>1.0.8-150812</pss-bppf-packs.version><pay-foundation-service-api.version>1.1.4-150812</pay-foundation-service-api.version><assist-persistence-api.version>1.0.5-150812</assist-persistence-api.version> <!--内部模块依赖--></properties><build><pluginManagement><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><source>1.7</source><target>1.7</target><!--<compilerArgs>--><!--<compilerArg>-Xlint:unchecked</compilerArg>--><!--</compilerArgs>--></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>2.17</version><configuration><skipTests>false</skipTests><argLine>-XX:-UseSplitVerifier</argLine></configuration></plugin></plugins></pluginManagement><plugins><plugin><artifactId>maven-surefire-plugin</artifactId></plugin><plugin><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><encoding>UTF-8</encoding></configuration></plugin></plugins></build><dependencyManagement><dependencies><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${joda-time.version}</version></dependency><dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>${guava.version}</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>dubbo</artifactId><version>${dubbo.version}</version><exclusions><exclusion><groupId>org.springframework</groupId><artifactId>spring</artifactId></exclusion><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aop</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework.integration</groupId> <artifactId>spring-integration-core</artifactId><version>${spring.integration.version}</version></dependency><dependency><groupId>org.springframework.integration</groupId> <artifactId>spring-integration-stream</artifactId><version>${spring.integration.version}</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>${aspectj.version}</version></dependency><!--log related begin --><dependency><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId><version>${slf4j.version}</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>${slf4j.version}</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>${logback.version}</version><scope>runtime</scope></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-core</artifactId><version>${logback.version}</version></dependency><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>${commons-logging.version}</version></dependency><dependency><groupId>com.github.sgroschupf</groupId><artifactId>zkclient</artifactId><version>${zkclient.version}</version><exclusions><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion></exclusions></dependency><dependency><groupId>com.oracle</groupId><artifactId>ojdbc6</artifactId><version>${ojdbc.version}</version><scope>runtime</scope></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>${mybatis.version}</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>${mybatis-spring.version}</version> </dependency><dependency><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId><version>${commons-lang.version}</version> </dependency><dependency><groupId>dom4j</groupId><artifactId>dom4j</artifactId><version>${dom4j.version}</version></dependency><dependency><groupId>jaxen</groupId><artifactId>jaxen</artifactId><version>${jaxen.version}</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>${junit.version}</version></dependency><dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><version>${hamcrest.version}</version><scope>test</scope></dependency><dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-library</artifactId><version>${hamcrest.version}</version><scope>test</scope></dependency><dependency><groupId>org.mockito</groupId><artifactId>mockito-all</artifactId><version>${mockito.version}</version><scope>test</scope></dependency><dependency><groupId>net.sf.dozer</groupId><artifactId>dozer</artifactId><version>${dozer.version}</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>${lombok.version}</version></dependency><dependency><groupId>org.glassfish</groupId><artifactId>javax.el</artifactId><version>${el.version}</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>${javax.servlet-api.version}</version><scope>provided</scope></dependency><dependency><groupId>com.bestpay</groupId><artifactId>bestpay-foundation</artifactId><version>${bestpay-foundation.version}</version> <exclusions><exclusion><artifactId>javax.el</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-validator</artifactId><version>${hibernate.version}</version></dependency><dependency><groupId>com.bestpay</groupId><artifactId>bpep-validator</artifactId><version>${bpep-validator.version}</version> </dependency><dependency><groupId>javax.validation</groupId><artifactId>validation-api</artifactId><version>${validation-api.version}</version> </dependency><dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId><version>${quartz.version}</version></dependency><dependency><groupId>mons</groupId><artifactId>commons-lang3</artifactId><version>${commons-lang3.version}</version> </dependency><dependency><groupId>c3p0</groupId><artifactId>c3p0</artifactId><version>${c3p0.version}</version></dependency><dependency><groupId>org.jasypt</groupId><artifactId>jasypt</artifactId><version>${jasypt.version}</version></dependency></dependencies></dependencyManagement><dependencies><dependency><artifactId>javax.servlet-api</artifactId> </dependency><dependency><groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId></dependency><dependency><groupId>com.google.guava</groupId> <artifactId>guava</artifactId></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency><!--slf4j依赖api start--><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId></dependency><!--支持log4j依赖api start--><dependency><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId> </dependency><!--支持log4j依赖api end--><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-core</artifactId></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId> <scope>runtime</scope></dependency><dependency><groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </dependency><!--slf4j依赖api end--><dependency><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId> </dependency><!--<dependency><groupId>log4j</groupId><artifactId>log4j</artifactId></dependency>--><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency><dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><scope>test</scope></dependency><dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-library</artifactId> <scope>test</scope></dependency><dependency><groupId>org.springframework</groupId> <artifactId>spring-test</artifactId><version>${spring.version}</version><scope>test</scope></dependency><dependency><groupId>org.mockito</groupId><artifactId>mockito-all</artifactId><scope>test</scope></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-validator</artifactId> </dependency><dependency><groupId>com.bestpay</groupId><artifactId>bpep-validator</artifactId></dependency><dependency><groupId>javax.validation</groupId><artifactId>validation-api</artifactId></dependency><dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>${spring.version}</version></dependency><dependency><groupId>mons</groupId><artifactId>commons-lang3</artifactId></dependency><dependency><groupId>com.bestpay</groupId><artifactId>bestpay-foundation</artifactId><version>${bestpay-foundation.version}</version></dependency></dependencies><repositories><repository><id>bestpay</id><name>bestpay</name><!--必须要配置域名,测试环境自动化部署的IP与本地IP不同--> <url>http://172.26.7.12:8081/nexus/content/groups/public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository><repository><id>center</id><name>Maven Repository Switchboard</name><!--必须要配置域名,测试环境自动化部署的IP与本地IP不同--> <url></url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories><distributionManagement><id>releases</id><name>Nexus Release Repository</name><url>http://172.26.7.12:8081/nexus/content/repositories/releases/</url></repository><snapshotRepository><id>snapshots</id><name>Nexus Snapshot Repository</name><url>http://172.26.7.12:8081/nexus/content/repositories/snapshots/</url></snapshotRepository></distributionManagement></project>3.修改文件descriptor.xml,关注红色部分<assemblyxmlns="/plugins/maven-assembly-plugin/assembly/1.1.0" xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/plugins/maven-assembly-plugin/assembly/1.1.0 /xsd/assembly-1.1.0.xsd"><id>${mavenDir}-assembly</id><formats><format>war</format></formats><includeBaseDirectory>false</includeBaseDirectory><fileSets><fileSet><directory>${project.basedir}/src/main/resources</directory><includes><include>**/*.xml</include></includes><excludes><exclude>/assemble/**</exclude></excludes><outputDirectory>WEB-INF/classes</outputDirectory></fileSet><fileSet><directory>${project.basedir}/../pss-persistence/src/main/resources</directory><includes><include>**/*.xml</include></includes><exclude>/assemble/**</exclude></excludes><outputDirectory>WEB-INF/classes</outputDirectory></fileSet><fileSet><directory>${project.basedir}/src/main/log</directory><outputDirectory>log</outputDirectory></fileSet><!--<fileSet>--><!--<directory>${project.basedir}/src/main/resources/script</directory>--><!--<includes>--><!--<include>startup.sh</include>--><!--</includes>--><!--<outputDirectory>/</outputDirectory>--><!--<fileMode>0755</fileMode>--><!--<lineEnding>unix</lineEnding>--><!--</fileSet>--></fileSets><files><!--<file>--><!--<source>${project.basedir}/src/main/resources/script/conf/setenv-${mavenDir}.conf</source >--><!--<outputDirectory>config</outputDirectory>--><!--<destName>setenv.conf</destName>--><!--<lineEnding>unix</lineEnding>--><!--</file>--><file><source>${project.basedir}/src/main/resources/properties/${mavenDir}/app.properties</source ><outputDirectory>WEB-INF/classes/properties/</outputDirectory><destName>app.properties</destName></file></files><dependencySets><dependencySet><outputDirectory>WEB-INF/lib</outputDirectory><excludes><exclude>org.apache.maven:*</exclude><exclude>org.codehaus.plexus:*</exclude><exclude>org.apache.maven.wagon:*</exclude><exclude>org.apache.maven.surefire:*</exclude><exclude>org.apache.maven.plugins:*</exclude><exclude>junit:*</exclude></dependencySet></dependencySets></assembly>4.添加BootstrapListener.java文件,关注红色部分packagecom.bestpay.pss.bootstrap;import lombok.extern.slf4j.Slf4j;import org.springframework.context.support.ClassPathXmlApplicationContext;importjavax.servlet.ServletContextEvent;importjavax.servlet.ServletContextListener;importjavax.servlet.annotation.WebListener;/*** Created by aokage* Administrator on* Date: 14-3-24.*/@Slf4j@WebListenerpublic final class BootstrapListener implements ServletContextListener {publicBootstrapListener() {}privateClassPathXmlApplicationContext context;/*** Start the service.*/protected void startUp() throws Exception {context = new ClassPathXmlApplicationContext(new String[]{"spring/pss-spring-context.xml"});context.start();context.registerShutdownHook();ZkStandbyInit.start(context);("pss service started successfully");}/*** Stop the service.*/protected void shutDown() throws Exception {context.stop();("service stopped successfully");}@Overridepublic void contextInitialized(ServletContextEventservletContextEvent) { ("pss service started ");try {startUp();} catch (Exception ex) {log.error("ignore interruption ");}}@Overridepublic void contextDestroyed(ServletContextEventservletContextEvent) { try {shutDown();} catch (Exception e) {e.printStackTrace();}}}。