1 搭建 Linux 服务器
1.1 购买阿里云服务器或安装虚拟机
这里建议是 CentOS 7.X 或 CentOS 8.X,当然其他的 Linux 如 deepin、Ubuntu 也可以,只是软件环境的安装包和安装方式不同,跑项目都是差不多的
1.2 安装 JDK1.8(CentOS 8 为例)
下载 JDK 安装包:
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
选择:jdk-8u291-linux-x64.tar.gz
安装:
[root@xxx local]# tar -zxvf jdk-8u291-linux-x64.tar.gz
[root@xxx local]# vim /etc/profile
复制代码
修改环境变量:
export JAVA_HOME=/usr/local/jdk1.8.0_291
export JER_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
复制代码
刷新配置文件并查看安装结果:
[root@xxx local]# source /etc/profile
[root@xxx local]# java -version
java version "1.8.0_291"
Java(TM) SE Runtime Environment (build 1.8.0_291-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.291-b15, mixed mode)
复制代码
1.3 安装 MySQL
参考这篇文章:https://blog.csdn.net/Mr_YanMingXin/article/details/110858348
1.4 安装 Maven(非必要)
为什么说安装 Maven 不是必要的呢?
因为 Java 具有跨平台的特性,可以在 Windows 环境下打包成 Jar 文件或者 war 文件,在 Linux 上一样可以直接运行!
Linux 安装 Maven 的作用:
进行项目的编译和打包,当然也可以直接运行
安装步骤:
下载 Maven 安装包:
https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.8.1/binaries/apache-maven-3.8.1-bin.tar.gz
放到 Linux 上解压并修改配置文件:
[root@xxx local]# tar -zxvf apache-maven-3.8.1-bin.tar.gz
[root@xxx local]# vim /etc/profile
复制代码
修改环境变量:
export MAVEN_HOME=/opt/apache-maven-3.8.1
export PATH=$MAVEN_HOME/bin:$PATH
复制代码
刷新配置文件并验证:
[root@xxx local]# source /etc/profile
[root@xxx local]# mvn -v
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: /opt/apache-maven-3.8.1
Java version: 1.8.0_141, vendor: Oracle Corporation, runtime: /usr/local/jdk1.8.0_141/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.18.0-193.14.2.el8_2.x86_64", arch: "amd64", family: "unix"
复制代码
别忘了!Maven 配置阿里云镜像:
[root@xxx apache-maven-3.8.1]# pwd
/opt/apache-maven-3.8.1
[root@xxx apache-maven-3.8.1]# vim conf/settings.xml
复制代码
大约是在第 140 多行左右:
<mirrors>
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<!-- 中央仓库1 -->
<mirror>
<id>repo1</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
<!-- 中央仓库2 -->
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
</mirrors>
复制代码
2 项目部署运行
2.1 项目编译打包(Windows 环境下打包成 jar 文件)
项目的编译和打包一般有两种方式
(1)直接在 IDEA 中进行项目的打包
(2)使用命令行方式
在含有 pom.xml 文件的目录下使用 cmd
执行mvn clean package
命令
这样就代表成功啦,然后就会发现多了一个 target 目录和一个 jar 文件
以上两个过程在 Linux 下也是一样的!(前提是 Linux 也安装了 Maven)
2.2 部署运行
(1)方式一:可以是未编译成 Jar 文件情况下
cd 到需要运行的项目主目录下,pom.xml 文件的目录
[root@xxx placard_demo]# ll
-rw-r--r-- 1 root root 10519 May 27 08:17 placard_demo.iml
-rw-r--r-- 1 root root 5989 May 27 08:17 pom.xml
-rw-r--r-- 1 root root 1366 Apr 1 22:36 README.md
drwxr-xr-x 4 root root 30 Apr 1 10:21 src
drwxr-xr-x 5 root root 61 May 27 14:24 target
复制代码
使用mvn spring-boot:run
命令运行如果长时间运行请使用nohup mvn spring-boot:run
(2)方式二:已经有 Jar 文件情况下
cd 到需要运行的项目主目录的 target 目录下,jar 文件的目录
[root@xxx target]# ll
total 56372
drwxr-xr-x 6 root root 92 May 27 14:23 classes
drwxr-xr-x 2 root root 28 Jun 27 15:06 maven-archiver
drwxr-xr-x 3 root root 35 May 27 14:23 maven-status
-rw-r--r-- 1 root root 42572685 Jun 27 15:07 placard_demo-0.0.1-SNAPSHOT.jar
-rw-r--r-- 1 root root 15147851 Jun 27 15:07 placard_demo-0.0.1-SNAPSHOT.jar.original
drwxr-xr-x 3 root root 17 May 27 14:24 test-classes
复制代码
使用java -jar xxx.jar
命令运行如果长时间运行请使用nohup java -jar xxx.jar
2.3 注意事项
使用 nohup 运行时会产生一个日志文件nohup.out
,包含项目运行时的全部控制台日志输入,所以报错信息就可以根据它来查看。
2.4 常见问题
(1)jar 文件无法运行
Linux 的文件权限分为可读、可写、可执行,分别用 r、w、x 表示
所以无法运行可能是权限的问题,使用ll或ls -a
命令查看 jar 文件的权限
改变权限:
chmod 777 xx.jar 或 chmod ugo+x xx.jar
复制代码
当然这是一种不太安全的行为,因为把所有用户都赋予了对该文件的全部权限
,相对安全的做法请自字百度下 chmod 的用法。
(2)查看后台进程
如果后台有进程,大家就可以利用客户端测试啦!欢迎留言点赞!
评论