SpringBoot工程打包与运行的实现详解
目录
- 打包与运行
- 双击clean
- 双击pakage生成target
- 右键jar–>Show in Explorer
- 进入到jar包目录执行cmd指令
- 输入指令
- BUG
- cmd中显示jar中没有主清单属性
- Windows端口被占用
- 临时属性设置
- 临时端口设置
- 编程方式
打包与运行
在项目开发完成之后,可以直接用IDEA将其打包成JAR包运行,也可以打包成WAR包运行以便在多服务器、多配置环境下运行。
双击clean
双击pakage生成target
右键jar–>Show in Explorer
进入到jar包目录执行cmd指令
输入指令
运行指令:java -jar springboot_ssmp-0.0.1-SNAPSHOT.jar
cmd终端就是服务器,这是就可以去浏览器运行程序了。
注意:
在输入指令时java -jar 后面通过Tab键自动补全。
Ctrl+C 在cmd中关闭运行指令。
BUG
cmd中显示jar中没有主清单属性
原因:
项目 pom.xml里没有打包maven插件支持
解决办法:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
Windows端口被占用
常见的执行指令
#查询端口
netstat -ano
#查询指定端口
netstat -ano |findstr“端口号"
#根据进程PID查询进程名称
tasklist lfindstr"进程PID号"
#根据PID杀死任务
taskkill /F/PID“进程PID号"
#根据进程名称杀死任务
taskkill -f -t -im“进程名称"
查找80端口
查询指定端口
根据pid查找电脑进程
强制终止进程
- taskkill : 杀死
- -f : 强制
- 18836 :java80端口的pid
再次启动,成功解决Bug
杀死进程后,相应的程序也就关闭了。
临时属性设置
临时端口设置
: --server.port=8081
运行测试,此时端口号为8081
编程方式
通过编程形式带参数启动SpringBoot程序,为程序添加运行参数
String[] arg=new String[1]; arg[0]="--server.port=8082"; SpringApplication.run(SsmpApplication.class, arg);
不携带参数启动SpringBoot程序
//可以在启动boot程序时断开读取外部临时配置对应的入口,也就是去掉读取 外部参数的形态 SpringApplication.run(SsmpApplication.class);
运行测试,此时端口号为8082
到此这篇关于SpringBoot工程打包与运行的实现详解的文章就介绍到这了,更多相关SpringBoot工程打包与运行内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
SpringBoot集成RabbitMQ和概念介绍
目录 一.RabbitMQ介绍 二.相关概念 三.简单使用 1.配置pom包 2.配置文件 3.队列配置 4.发送者 5.接收者 6.测试 四.高级使用 1.Topic Exchange 2.Fanout Exchange 一.RabbitMQ介绍 RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性.扩展性. 高可用性等方面表现不俗.RabbitMQ主要是为了实现系统之间的双向解耦而实现的.当生产者大量产生数据时,消
-
SpringBoot与SpringCache概念用法大全
目录 1.SpringCache的概念 2.SpringCache用法(redis版) 2.1 .SpringCache基本用法 2.2 .SpringCache自定义缓存key 2.3 .SpringCache更新缓存 2.4 .SpringCache清空缓存 2.5 .SpringCache其他用法 3.SpringCache用法(EhCache版) 1.SpringCache的概念 首先我们知道jpa,jdbc这些东西都是一些规范,比如jdbc,要要连接到数据库,都是需要用到数据库连接,预
-
SpringBoot程序的打包与运行的实现
目录 程序打包 程序运行 SpringBoot程序打包失败处理 命令行启动常见问题及解决方案 SpringBoot项目快速启动(Linux版) 刚开始做开发学习的小伙伴可能在有一个知识上面有错误的认知,我们天天写程序是在Idea下写的,运行也是在Idea下运行的. 但是实际开发完成后,我们的项目是不可能运行在自己的电脑上的. 我们以后制作的程序是运行在专用的服务器上的,简单说就是将你做的程序放在一台独立运行的电脑上,这台电脑要比你开发使用的计算机更专业,并且安全等级各个方面要远超过你现在的电脑.
-
SpringBoot零基础入门之基本操作与概念
目录 1.什么是Spring Boot 2.Spring Boot优点 3.Spring Boot 项目创建 3.1 使用Idea 创建 3.2 Spring Boot 项目 3.3 启动并验证Spring Boot项目有没有创建成功 3.4 网页版创建(了解) 4.项目目录介绍和运用 4.1 项目运行 4.2 输出 Hello world 5.注意事项-包路径错误 5.1 正确路径 5.2 小结 总结 1.什么是Spring Boot 为什么要学Spring Boot? Spring 的诞生是
-
SpringBoot教程_创建第一个SpringBoot项目
目录 创建SpringBoot项目可以通过两种方式 创建SpringBoot项目可以通过两种方式 1.通过访问:https://start.spring.io/,SpringBoot的官方网站进行创建SpringBoot项目: 2.通过工具(例如:Idea)创建SpringBoot项目.本次使用IDEA创建第一个SpringBoot项目. 首先,打开我们的Idea开发工具 选择Create New Poject(创建一个新的项目) 我们使用Spring Initializr创建SpringBoo
-
springboot创建线程池的两种方式小结
目录 springboot创建线程池两种方式 1.使用static代码块创建 2.使用@Configuration @bean注解,程序启动时创建 springboot开启线程池 定义线程池 使用 springboot创建线程池两种方式 1.使用static代码块创建 这样的方式创建的好处是当代码用到线程池的时候才会初始化核心线程数 具体代码如下: public class HttpApiThreadPool { /** 获取当前系统的CPU 数目*/ static int cpuNums =
-
SpringBoot 项目中创建线程池
前言: 前两天做项目的时候,想提高一下插入表的性能优化,因为是两张表,先插旧的表,紧接着插新的表,一万多条数据就有点慢了 后面就想到了线程池ThreadPoolExecutor,而用的是Spring Boot项目,可以用Spring提供的对ThreadPoolExecutor封装的线程池ThreadPoolTaskExecutor,直接使用注解启用 使用步骤: 先创建一个线程池的配置,让Spring Boot加载,用来定义如何创建一个ThreadPoolTaskExecutor,要使用@Con
-
SpringBoot工程打包与运行的实现详解
目录 打包与运行 双击clean 双击pakage生成target 右键jar–>Show in Explorer 进入到jar包目录执行cmd指令 输入指令 BUG cmd中显示jar中没有主清单属性 Windows端口被占用 临时属性设置 临时端口设置 编程方式 打包与运行 在项目开发完成之后,可以直接用IDEA将其打包成JAR包运行,也可以打包成WAR包运行以便在多服务器.多配置环境下运行. 双击clean 双击pakage生成target 右键jar–>Show in Explorer
-
SpringBoot工程下Lombok的应用教程详解
背景分析 在实际的java项目中我们创建的所有pojo类几乎都要为属性添加set/get/toString等相关方法,所有的日志记录相关类可能都要创建日志等对象,这些样板代码既没有技术含量,又影响着代码的美观,同时重复的编码过程会在无形中加大我们的工作量. 此时Lombok应运而生. lombok简介 概述 Lombok是一个第三方的Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来告诉编译过程中的编译工具,在源代码编译成字节码的过程中,在字节码中添加一些量样板代
-
SpringBoot配置文件的加载位置实例详解
springboot采纳了建立生产就绪spring应用程序的观点. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.在一般情况下,我们不需要做太多的配置就能够让spring boot正常运行.在一些特殊的情况下,我们需要做修改一些配置,或者需要有自己的配置属性. SpringBoot启动会扫描以下位置的application.yml或者 application.properties文件作为SpringBoot的默认配置文件. -file:./config/ -file:./
-
SpringBoot中RabbitMQ集群的搭建详解
目录 1. 两种模式 1.1 普通集群 1.2 镜像集群 1.3 节点类型 2. 搭建普通集群 2.1 预备知识 2.2 开始搭建 2.3 代码测试 2.4 反向测试 3. 搭建镜像集群 3.1 网页配置镜像队列 3.2 命令行配置镜像队列 4. 小结 单个的 RabbitMQ 肯定无法实现高可用,要想高可用,还得上集群. 今天松哥就来和大家聊一聊 RabbitMQ 集群的搭建. 1. 两种模式 说到集群,小伙伴们可能第一个问题是,如果我有一个 RabbitMQ 集群,那么是不是我的消息集群中的
-
Android 打包三种方式实例详解
Android 打包三种方式实例详解 前言: 现在市场上很多app应用存在于各个不同的渠道,大大小小几百个,当我们想要在发布应用之后统计各个渠道的用户下载量,我们就要进行多渠道打包. 01.应用的打包签名什么是打包? 打包就是根据签名和其他标识生成安装包. 签名是什么? 1.在android应用文件(apk)中保存的一个特别字符串 2.用来标识不同的应用开发者:开发者A,开发者B 3.一个应用开发者开发的多款应用使用同一个签名 就好比是一个人写文章,签名就相当于作者的署名. 如果两个应用都是一
-
SpringBoot 集成Kaptcha实现验证码功能实例详解
在一个web应用中验证码是一个常见的元素.不管是防止机器人还是爬虫都有一定的作用,我们是自己编写生产验证码的工具类,也可以使用一些比较方便的验证码工具.在网上收集一些资料之后,今天给大家介绍一下kaptcha的和springboot一起使用的简单例子. 准备工作: 1.你要有一个springboot的hello world的工程,并能正常运行. 2.导入kaptcha的maven: <!-- https://mvnrepository.com/artifact/com.github.penggl
-
关于在IDEA中SpringBoot项目中activiti工作流的使用详解
记录一下工作流的在Springboot中的使用,,顺便写个demo,概念,什么东西的我就不解释了,如有问题欢迎各位大佬指导一下. 1.创建springboot项目后导入依赖 <dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring-boot-starter-basic</artifactId> <version>6.0.0</version&
-
SparkSQL读取hive数据本地idea运行的方法详解
环境准备: hadoop版本:2.6.5 spark版本:2.3.0 hive版本:1.2.2 master主机:192.168.100.201 slave1主机:192.168.100.201 pom.xml依赖如下: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
-
SpringBoot之HandlerInterceptor拦截器的使用详解
前言 平常项目开发过程中,会遇到登录拦截,权限校验,参数处理,防重复提交等问题,那拦截器就能帮我们统一处理这些问题. 一.实现方式 1.1 自定义拦截器 自定义拦截器,即拦截器的实现类,一般有两种自定义方式: 定义一个类,实现org.springframework.web.servlet.HandlerInterceptor接口. 定义一个类,继承已实现了HandlerInterceptor接口的类,例如org.springframework.web.servlet.handler.Handle
-
SpringBoot项目如何打war包问题详解
1.pom.xml配置修改 <packaging>jar</packaging> //修改为 <packaging>war</packaging> 2.pom文件添加如些依赖 <!--添加servlet-api的依赖,用来打war包 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</
随机推荐
- 实例解析Ruby设计模式开发中对观察者模式的实现
- 17种正则表达式
- Spring MVC 中 AJAX请求并返回JSON的示例
- VirtualBox中CentOS7安装教程
- asp.net批量多选文件上传解决方案
- ASP 常见的连接字符串写法(access2007)
- Android UI设计系列之自定义DrawView组件实现数字签名效果(5)
- MySQL定义异常和异常处理详解
- docker快速入门教程
- php编写批量生成不重复的卡号密码代码
- java 使用URLDecoder和URLEncoder对中文进行处理
- C语言计算日期差的方法示例
- jQuery实现的输入框选择时间插件用法实例
- 基于JQuery实现滚动到页面底端时自动加载更多信息
- 关于jQuery.ajax()的jsonp碰上post详解
- php.ini中date.timezone设置分析
- JavaScript基础进阶之数组方法总结(推荐)
- Python内置模块logging用法实例分析
- python计算列表内各元素的个数实例
- shell脚本批量删除es索引的方法