其他:同时打包成jar和war没试过,只用其中一个是可行的
1,maven项目打包war
A, pom.xml文件顶部加入这行代码:<packaging>war</packaging> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.nari.slsd.sl.report</groupId> <artifactId>sl.bc.report_hzy</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>war</packaging> B, pom文件<dependencies>标签里面加入 <dependencies> <!-- maven 项目打war包 --> <dependency> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>3.0.0</version> </dependency> </dependencies>
2,maven项目打包jar
A, pom文件</dependencyManagement>标签后面加入以下代码
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.nari.slsd.hu.report.ServerApplication</mainClass>
<includeSystemScope>true</includeSystemScope>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.3</version>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>
改好后:选中项目右键选择maven强制更新,然后选中项目右键选择Run As, 然后再选择maven build,在弹出界面中,
“Goals”输入框中输入-X package
,同时勾选下方Update Snapshots
和Skip Tests
选项框,然后点击Revert就等项目开始打包了
3,tomcat 注册成服务(主要是bin下面的的)
处理: a,conf下面得service.xml文件更改加入代码URIEncoding="GB2312"
加入的地方为:<Connector URIEncoding="GB2312" port="8080"
b,bin下面的service.bat文件更改,在第一行@echo off 下加入
set JAVA_HOME=D:\fysbyz\apache-tomcat-8.5.23-fysbyz\bin\jdk1.8
set CALATINA_HOME=D:\fysbyz\apache-tomcat-8.5.23-fysbyz
set PR_DISPLAYNAME=tomcat8_8182_fysbyz
c,bin下面的startup.bat文件和shutdown.bat更改,在第一行@echo off下加入(不加也行,直接进入第四步)
set JAVA_HOME=D:\fysbyz\apache-tomcat-8.5.23-fysbyz\bin\jdk1.8
set CALATINA_HOME=D:\fysbyz\apache-tomcat-8.5.23-fysbyz
d,以管理员的身份打开cmd,进入tomcat目录下的bin目录,运行service.bat文件,如果不行,运行命令 service.bat install
e,如果注册多个tomcat服务的时候报错(如安装“Tomcat9”服务失败),则找到service.bat下面的修改Tomcat名称
set SERVICE_NAME=Tomcat9_1
set DISPLAYNAME=Apache Tomcat 9.1 %SERVICE_NAME%
f,删除服务:sc delete 服务名称