`
ymq267
  • 浏览: 129867 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
社区版块
存档分类
最新评论

Linux下 启动sh文件 运行spring boot

阅读更多

仅为 自己工作中的笔记

1.chmod 空格"+x" 空格 你的sh文件名 (+x是一个整体,不要拆开)
2.输入"./你的sh文件名" 即可执行
举例:
1 chmod +x helloworld.sh
2 ./helloworld.sh (不行就在后面加上 start,stop,status,info)


启动后 用ps -ef 会在进程中多出 如下:
test_web 10472 10249  0 15:14 pts/0    00:00:00 /bin/bash ./helloworld.sh start
test_web 10484 10472  4 15:14 pts/0    00:00:24 /usr/java/jdk1.8.0_121/bin/java -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -server
test_web 10485 10472  0 15:14 pts/0    00:00:00 tail -f /Users/test_web/helloworld_api/helloworld-api-1.0-SNAPSHOT/logs/out.log


由于是前台方式启动,所以当前用户可能做不了别的操作!(可以再起一个窗口进行其他操作)

问题点: 这么启动后 在当前窗口 ctrl+z 结束启动时会出现
[1]+  Stopped                 ./helloworld.sh start

然后当我认为应该已经停止项目了以后,想再次按以上的命令启动时报如下错误:



15:11:15.607 [main] ERROR o.a.coyote.http11.Http11NioProtocol - Failed to start end point associated with ProtocolHandler [http-nio-8085]
java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Net.java:433)
        at sun.nio.ch.Net.bind(Net.java:425)
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
        at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:228)
        at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:874)
        at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:590)
        at org.apache.catalina.connector.Connector.startInternal(Connector.java:969)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at org.apache.catalina.core.StandardService.addConnector(StandardService.java:225)
        at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.addPreviouslyRemovedConnectors(TomcatEmbeddedServletContainer.java:233)
        at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.start(TomcatEmbeddedServletContainer.java:178)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.startEmbeddedServletContainer(EmbeddedWebApplicationContext.java:297)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.finishRefresh(EmbeddedWebApplicationContext.java:145)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:761)
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:371)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175)
        at com.intelspace.intelspaceapi.web.Application.main(Application.java:9)
15:11:15.617 [main] ERROR o.a.catalina.core.StandardService - Failed to start connector [Connector[HTTP/1.1-8085]]
org.apache.catalina.LifecycleException: Failed to start component [Connector[HTTP/1.1-8085]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
        at org.apache.catalina.core.StandardService.addConnector(StandardService.java:225)
        at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.addPreviouslyRemovedConnectors(TomcatEmbeddedServletContainer.java:233)
        at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.start(TomcatEmbeddedServletContainer.java:178)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.startEmbeddedServletContainer(EmbeddedWebApplicationContext.java:297)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.finishRefresh(EmbeddedWebApplicationContext.java:145)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:761)
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:371)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175)
        at com.intelspace.intelspaceapi.web.Application.main(Application.java:9)
Caused by: org.apache.catalina.LifecycleException: service.getName(): "Tomcat";  Protocol handler start failed
        at org.apache.catalina.connector.Connector.startInternal(Connector.java:976)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        ... 13 common frames omitted
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Net.java:433)
        at sun.nio.ch.Net.bind(Net.java:425)
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
        at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:228)
        at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:874)
        at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:590)
        at org.apache.catalina.connector.Connector.startInternal(Connector.java:969)
        ... 14 common frames omitted
15:11:15.668 [main] ERROR o.s.b.d.LoggingFailureAnalysisReporter -

***************************
APPLICATION FAILED TO START
***************************

Description:

The Tomcat connector configured to listen on port 8085 failed to start. The port may already be in use or the connector may be misconfigured.

Action:

Verify the connector's configuration, identify and stop any process that's listening on port 8085, or configure this application to listen on another port.


貌似是并没有完全停止项目,ps -ef 后发现进程中还存在,并且占用了8085端口(具体原因为我搞不明白)

解决方法:
所以想重新启动spring boot项目时,需要先杀掉进程
kill -9 pid(进程号)

按照上面的错误代码pid就是 10472,10484,10485 这三个
其中10484应该是最应该杀掉的


然后在 ./helloworld.sh 启动项目应该就可以了

这个情况仅为 本人情况(貌似其他人不会出现)
本人菜鸟一枚 只当做记笔记了

分享到:
评论

相关推荐

    spring boot/spring cloud项目启动脚本,默认名称:start.sh

    linux服务器,springboot,spring cloud、spring cloud alibaba等项目启动脚本 下载脚本, 1,上传脚本至jar包同级目录 2,更改脚本: jar包名称 项目文件路径 日志路径(包含日志名称) 脚本已配置好jvm优化...

    Linux部署springboot(springcloud)启动多个jar

    本篇文章将深入讲解如何在Linux环境下部署SpringBoot(SpringCloud)项目,并启动多个jar文件,以及如何通过shell脚本来实现日志管理和服务控制。 首先,SpringBoot是一个基于Spring框架的轻量级开发工具,它内置了...

    spring boot部署启动脚本

    在Spring Boot项目中,部署启动脚本通常为.sh或.bat文件,例如这里的"app.sh",这是一个Unix/Linux环境下的Shell脚本。在Windows系统中,对应的可能是批处理文件.bat。这些脚本包含了启动、停止、重启等操作,方便...

    spring boot一键打包zip,并且在linux下直接部署的高效方法工具

    备注:1,2,3这三个文件放在工程的src的bin目录下,在linux下执行的时候可能会提示找不到文件,例如start.sh:只需要vim start.sh,然后:set ff=unix,最后:wq即可 5文件放在src-main-assembly目录下即可

    spring boot linux启动方式详解

    在生产环境中,Spring Boot 应用程序需要在 Linux 操作系统下启动和运行。这篇文章将详细介绍 Spring Boot Linux 启动方式详解,包括前台启动、后台启动和脚本启动等方式。 前台启动 前台启动是指在 Linux 终端下...

    Springboot 项目打包,配置和依赖包分开 启动批处理文件(linux和windows)

    本话题将深入讲解如何在Spring Boot项目中进行打包,以及如何创建适用于Linux和Windows系统的启动批处理文件。 首先,我们来探讨Spring Boot项目的打包过程。在Spring Boot中,通常我们会使用Maven或Gradle作为构建...

    linux 一键启动 jar包 批处理脚本

    linux 一键启动 jar包 批处理脚本,适用于java 项目,spring boot 一键启动,停止,重启 等,代码简洁,可直接使用.

    Springboot jar文件如何打包zip在linux环境运行

    本文主要介绍了如何将Spring Boot jar文件打包成zip格式,以便在Linux环境中运行。 首先,需要在pom.xml文件中添加maven-assembly-plugin插件,以便生成zip文件。然后,在assembly.xml文件中配置打包信息,包括id、...

    Linux启动与停止spring boot工程的脚本示例

    在Linux环境下管理和操作Spring Boot应用程序,特别是在生产环境中部署时,通常需要使用脚本来自动化启动和停止过程。本文将详细介绍如何创建这些脚本以及在Linux中使用`nohup`指令来确保程序在后台稳定运行。 首先...

    spring-boot-cli-1.2.3.RELEASE-bin.zip

    bin通常代表"binary",意味着里面包含了不同平台的执行文件,比如Windows的.bat脚本或者Linux的.sh脚本。 在标签为空的情况下,我们可以通过标题和描述推测该压缩包的核心内容: 1. **Spring Boot CLI**: Spring ...

    spring boot 搭建nacos注册中心的框架 项目代码

    1. 下载并启动Nacos服务器:访问Nacos官方网站下载最新版本的Nacos,解压后启动bin目录下的startup.sh(Linux/Mac)或startup.cmd(Windows)脚本。 2. 验证Nacos运行:通过浏览器访问`http://localhost:8848/nacos`...

    spring-boot-3.1.8.tar.gz

    如果是解压后的目录,通常会有 `bin` 目录下的启动脚本,如 `spring-boot-3.1.8/bin/spring-boot-run.sh`,可以用来启动应用。 在 Linux 上部署 SpringBoot 应用,你需要确保系统已安装 Java 运行环境(JRE 或 JDK...

    毕业设计&课设--基于spring boot的仓库物流管理系统(springboot+mybatis-plus+sh.zip

    【描述】中提到的“springboot+mybatis-plus+sh”,暗示了该项目使用了Spring Boot作为基础框架,Mybatis-Plus作为数据访问层的工具,而“sh”可能是指Shell脚本,通常用于自动化部署或系统管理任务。 首先,让我们...

    spring-boot-3.0.6.tar.gz

    标题中的 "spring-boot-3.0.6.tar.gz" 指的是 SpringBoot 的 3.0.6 版本的源码或可执行文件的压缩包,采用的是 Linux 平台常用的 tar.gz 压缩格式。这种格式在 Linux 下可以直接解压使用,便于传输和存储。 描述中...

    Linux下SpringBoot/SpringCloud微服务部署Shell

    Linux下SpringBoot/SpringCloud微服务部署Shell,对微服务jar进行部署,格式如下: sh spring-boot.sh $OPERATION jar包.jar --spring.profiles.active={自定义} OPERATION支持start、stop、status

    Shell脚本启动和停止springboot的jar包

    在本场景中,我们有两个文件——`startup.sh`和`shutdown.sh`,它们是用于启动和停止Spring Boot应用的Shell脚本,其中还涉及到内存配置。 首先,让我们深入理解`startup.sh`脚本。这个脚本的主要目标是启动一个...

    mvc和boot两种启动脚本

    `manager.sh`和`business.sh`这两个脚本可能包含了启动、停止、重启服务的命令,如`nohup java -jar $APP_JAR > logs.out 2>&1 &`用于后台启动Spring Boot应用,并将输出重定向到logs.out文件。同时,它们可能还包含...

    Spring Boot调用 Shell 脚本实现看门狗功能

    Spring Boot 调用 Shell 脚本实现看门狗功能 概述:本文主要介绍了使用 Spring Boot 调用 Shell 脚本实现看门狗功能的方法,通过实例代码详细地展示了实现过程,具有很高的参考价值。 一、什么是看门狗功能? ...

    linux-用来启动停止springboot应用的脚步

    Spring Boot的应用程序设计为可执行JAR或WAR文件,这使得它们可以在命令行上直接运行,但为了方便管理和自动化,我们会编写启动脚本来简化这些任务。下面将详细介绍如何创建和使用这些脚本来启动和停止Spring Boot...

Global site tag (gtag.js) - Google Analytics