jar包在window能运行,linux不行,SpringBoot工程在window和linux环境下运行jar包

2023-05-16

1.说明:SpringBoot工程使用开发工具打包出来的jar,运行jar包。

2.准备:准备一个可执行的jar包,这边我使用的是上一篇文章附件中的源码里的工程html-test.jar包

1.开始

使用文件:

spring-boot-tomcat: 存放日志目录

application-8081.yml :springBoot的运行执行文件(这里使用外置的,就不会运行jar包里的application-8081.yml 配置了)

html-test.jar:可运行的jar包

logback.xml:日志配置文件

start.bat/start.sh : windows/linux的运行文件

stop.bat/stop.sh : windows/linux的关闭运行文件

ddea9bc841ca7ea733ad5d836c16304d.png

2.首先先修改配置文件,以用于不同环境运行

logback.xml:

ef5d59b60309b9a14899483f26d0ff52.png

application-8081.yml :

10ea291a5a9670af768be49eca9b0bbe.png

和下面的:

fc3b82d17f80a3c7d2ccb2ed1892d621.png

修改完成后保存即可

3.运行:

windows下运行:直接双击start.bat,会出来弹框,启动完成后,我们运行接口测试工具可以测试成功

ac446ca16beff72ccf6241f7fe5e82b6.png

关闭:直接将cmd窗口关闭即可

linux:

去对应的目录下使用命令(这文件在同一级目录下)

运行:  ./start.sh

关闭:  ./stop.sh

4.代码

application-8081.yml

app:

name: /html-test

server:

port: 9999

context-path: /html-test

tomcat:

uri-encoding: UTF-8

#存放tomcat的临时文件、日志等目录,生产环境需修改

basedir: E:\html-test\spring-boot-tomcat

spring:

datasource:

name: pdwy

url: jdbc:oracle:thin:@100.134.56.3:1521:orcl

username: pdwytest

password: pdwy1234

# 使用druid数据源

type: com.alibaba.druid.pool.DruidDataSource

driver-class-name: oracle.jdbc.driver.OracleDriver

filters: stat

maxActive: 20

initialSize: 1

maxWait: 60000

minIdle: 1

timeBetweenEvictionRunsMillis: 60000

minEvictableIdleTimeMillis: 300000

validationQuery: select 'x'

testWhileIdle: true

testOnBorrow: false

testOnReturn: false

poolPreparedStatements: true

maxOpenPreparedStatements: 20

mybatis:

mapper-locations: classpath:mapping/*.xml

type-aliases-package: com.zte.model

#pagehelper

pagehelper:

helperDialect: oracle

reasonable: true

supportMethodsArguments: true

params: count=countSql

logging:

config: E:\html-test\logback.xml

#file: /home/pdwytest/spring-boot-tomcat/html-test.log

#pattern:

#console: "%d{yyyy-MM-dd HH:mm:ss} -%-4r [%t] %-5level %logger{36} - %msg%n"

#level:

#root: INFO

#org.springframework.web: ERROR

#org.hibernate: ERROR

#com.zte: info

#自定义配置项

encrypt:

key: 1BT3aDdEMdf1T3fo3pW3Jk2qwqLe

ivkey: fedcba9876543210

logback.xml

%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n

${LOG_HOME}/html-test.log

${LOG_HOME}/html-test.%d{yyyy-MM-dd}.log

30

%d{HH:mm:ss.SSS} [%thread] %-5level %logger{80} -+- %msg%n

start.bat

@echo off

java -jar html-test.jar --spring.config.location=E:/html-test/application-8081.yml

@pause

start.sh

#!/bin/sh

rm -f tpid

#application.yml 是指定使用的外部配置文件,目录根据实际情况修改

nohup java -jar html-test.jar --spring.config.location=application-8081.yml > /dev/null 2>&1 &

echo $! > tpid

echo html-test Start at 8081 Success!

stop.bat:暂时没用到

stop.sh

#!/bin/sh

#appName 需要根据实际情况修改

APP_NAME=html-test

tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`

if [ ${tpid} ]; then

echo 'Stop Process...'

kill -15 $tpid

fi

sleep 5

tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`

if [ ${tpid} ]; then

echo 'Kill Process!'

kill -9 $tpid

else

echo 'Stop Success!'

fi

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jar包在window能运行,linux不行,SpringBoot工程在window和linux环境下运行jar包 的相关文章

随机推荐