前言

  最近的项目需要在客户的服务器上面部署一个项目然后进行测试,服务器的系统是windows server2008的,以前部署的项目都是在linux系统上面居多,就算是在windows系统上面自己玩的时候也是通过命令java -jar jar包这种方式跑。但是这样会出现一个问题,dos命令窗口需要一直打开,如果把dos命令窗口不小心关闭了,那就得重新输入命令来启动。。。感觉好麻烦啊,而且老是开着那个小黑窗,总是感觉。。嗯,有点不习惯。于是网上查阅了以往大佬的资料,然后结合自己的实际操作做一下记录,方便自己以后查阅,也希望可以帮帮其他跟我一样的新手哦!


安装

  安装jdk

 第一步需要的就是在服务器上面安装好jdk,通过命令

java -version

 查看是否安装了jdk,我的服务器刚开始是没有安装的,所以我第一步就是安装jdk。

 从我的电脑上面把下载好的jdk上传到服务器上面的某个盘下面,然后开始配置环境变量。

 配置系统变量

 找到系统变量的path,在后面添加上自己jdk的bin目录的路径,记得前面用分号分隔开。

D:\app\Administrator\product\11.2.0\dbhome_1\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\jdk8\bin;

 如上就是我的path配置,倒数第二个分号之后的就是我的jdk的bin目录的具体位置。

 配置用户变量

 找到用户变量的CLASSPATH(没有则新增),在这里添加jdk的lib目录的路径。

C:\jdk8\lib

 如上就是我的lib的路径。

 验证是否安装成功

 输入命令

java -version

 可以看到jdk的相关信息

java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)

 出现类似如上信息则证明安装成功


  安装WinSW

  获取WinSW

  WinSW是一个开源项目,程序以及源码可以在Git Hub中下载:https://github.com/kohsuke/winsw/releases

  优势:winsw是一个可以将任何应用程序注册成服务的软件

  如图,这两个是我们所需要的,我们把它们下载下来到本地。

  配置WinSW

  把我们下载好的两个文件放到和我们的项目jar同一个目录下面,然后把WinSW.NET4.exe改个名字。

  我这里是改成了myServer.exe,同时把sample-minimal.xml也改成和exe文件一样的名字,也就是myServer.xml。

  接下来需要对xml文件进行一下编辑,如下。

<configuration>
<!-- 安装成windows服务后的服务名-->
<id>myServer</id>
<!-- 显示的服务名称 -->
<name>myServer</name>
<!-- 服务描述 -->
<description>这是winsw生成的服务,专门用于启动springboot项目</description> <!-- jdk可执行程序的路径,我们已经安装了jdk,只要“java” 即可-->
<executable>java</executable>
<!--参数-->
<arguments> -jar jar包名字</arguments>
</configuration>

  


  注册服务

   在myServer.exe 所在目录打开dos命令窗口,为了防止出现问题,最好用管理员身份打开。

   输入命令

myServer.exe install

   之后进入到电脑的服务找到我们的服务:myServer,右键启动即可。

  

在windows系统上面部署springboot项目并设置其开机启动的更多相关文章

  1. mac和linux下使用Docker,部署SpringBoot项目到docker

    主要是看一下如何在linux及mac上安装docker,创建docker镜像,部署SpringBoot项目到docker,并借助于DaoCloud进行docker镜像下载加速等. 我用的电脑是mac, ...

  2. 使用Cloud Toolkit部署SpringBoot项目到服务器

    由于我们经常发布项目到测试服,在测试服上调试一些本地无法调试的东西,所以出现了各种打包,然后上传.启动,时间都耗费在这无聊的事情上面了,偶然在网上看到IntelliJ IDEA有 Cloud Tool ...

  3. SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1

    在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...

  4. 部署SpringBoot项目jar包到云服务器

    前言 做安卓开发也有三四年了,但是对网络这块什么http.tcp/ip之类的一直不理解.并且想自己做一些小项目练练手的时候,数据库直接存在apk里总不是滋味,所以这次站在安卓开发的角度尝试着做一做简单 ...

  5. docker部署springboot项目

    本文介绍一下docker如何部署springboot项目. 前提条件: 1.可以运行jar包的环境 2.机器上已经安装了docker 3.准备部署的springboot的jar包 4.Dockerfi ...

  6. 利用Dockerfile部署SpringBoot项目

    利用Dockerfile部署SpringBoot项目 1.创建一个SpringBooot项目并且打成jar包 2.在Linux中创建一个文件夹,来做docker测试 [root@izwz90lvzs7 ...

  7. win10安装docker并结合Idea2018.1部署springboot项目

    一.准备工作 1..工具:win10,idea2018,maven3.5,jdk8 二.win10安装docker 1.win10安装docker:http://www.runoob.com/dock ...

  8. Docker快速上手之部署SpringBoot项目

    Docker是基于Go语言实现的云开源项目. Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装.分发.部署.运行等生命周期 ...

  9. Docker下部署springboot项目

    1.背景 如何在docker容器环境下部署一个springboot项目? 2.具体步骤 第一步:准备一个springboot项目的xxxx.jar包 jar包中用于测试的一个接口如下 第二步:编写Do ...

随机推荐

  1. Keystone安装与配置

    一.实验目的: 1.掌握OpenStack环境搭建的基础工作 2.掌握keystone的安装与配置方法 3.掌握keystone基础接口的调用方法 二.实验步骤: 1.利用最初创建的快照克隆两台Cen ...

  2. [译]Vulkan教程(30)深度缓存

    [译]Vulkan教程(30)深度缓存 Depth buffering 深度缓存 Introduction 入门 The geometry we've worked with so far is pr ...

  3. JSON.parse解决Unexpected token ' in JSON at position 1报错

     壹 ❀ 引 我们知道JSON.parse能将JSON字符串转变成JS对象,但在一些转换中可能出现Unexpected token ' in JSON at position 1的错误,这是因为被转换 ...

  4. zabbix通过agent监控linux主机

    前言: 前几篇博客分别介绍了通过snmp来进行监控linux主机与windows主机,本篇介绍通过agent客户端来进行系统监控. 环境: server:192.168.249.142 client: ...

  5. 《2019年小米春季上海 PHP 实习生招聘面试题》部分答案解析

    1 丶 Nginx 怎么实现负载均衡 这个还是比较简单 1.轮询 这种是默认的策略,把每个请求按顺序逐一分配到不同的 server,如果 server 挂掉,能自动剔除. 2.最少连接 把请求分配到连 ...

  6. IT兄弟连 HTML5教程 CSS3揭秘 在HTML文档中放置CSS的几种方式

    有很多方法将样式表加入到HTML中,每种方法都有自己的优点和缺点.新的HTML元素和属性已被加入,以允许样式表与HTML文档更简易地组合起来.将样式表加入到HTML中的常用方法有内联样式表.嵌入一张样 ...

  7. js之好看的鼠标点击-光标特效

    1.光标特效 <script src="https://blog-static.cnblogs.com/files/axqa/bubbleCursor.js">< ...

  8. Sql 中常用时间处理函数

    1.Sql 中常用时间处理函数  GETDATE()  返回当前的日期和时间 DATEPART()  返回日期/时间的单独部分 DATEADD()   返回日期中添加或减去指定的时间间隔 DATEDI ...

  9. 请求时发送OPTIONS请求

    最近在用uni-app开发项目时,发现一个之前没注意到的点,当我发送POST请求的时候,在NetWork可以看到在发送正式的POST请求时,会先发送一个OPTIONS请求,OPTIONS请求后才会发送 ...

  10. Python进阶一

    文章目录 异常处理 1 基本用法 2高级用法 逻辑运算符 循环的高级用法 异常处理1 基本用法应对所有情况 try: 1/0 except: print('某原因异常') 应对特定异常情况 try: ...