首页 > 编程语言 >实践部署java

实践部署java

时间:2024-03-18 11:47:06浏览次数:36  
标签:mini java log 文件 部署 实践 应用程序 命令 Java

1.查看运行端口,看看有没有被占用

ps -ef|grep java

ps -ef看一下全进程信息,grep java 过滤出带有 java字样的

 

2.存在进程,先把进程杀掉

kill -9 端口号

 

3.执行.sh 部署脚本

.sh里面内容是nohup java17 -Xmx600m -jar xl-tests-mini-server-1.0-SNAPSHOT.jar --debug >./mini.log 2>&1 &

解释:

这个 .sh 脚本中的命令是用来启动一个 Java 应用程序,并将其输出重定向到一个日志文件中,同时让这个应用程序在后台运行。下面是命令的逐部分解释:

nohup:这是一个命令,用于运行另一个命令,并忽略所有挂起(hangup)信号。这意味着即使你退出了登录会话或者关闭了终端,应用程序仍然会继续运行。nohup 常用于远程登录到服务器启动应用程序,并在退出登录后保持应用程序运行。

java17:这是 Java 17 版本的命令,用于启动 Java 虚拟机(JVM)。这里假设 java17 是已经安装在系统上的 Java 版本,或者是一个指向特定 Java 版本的软链接或别名。

-Xmx600m:这是传递给 Java 虚拟机的一个选项,指定了 Java 应用程序可以使用的最大堆内存为 600MB。-Xmx 是一个非标准选项,用于设置最大堆内存大小。

-jar xl-tests-mini-server-1.0-SNAPSHOT.jar:这个选项告诉 Java 虚拟机从指定的 JAR 文件启动应用程序。xl-tests-mini-server-1.0-SNAPSHOT.jar 是应用程序的 JAR 文件名。

--debug:这可能是传递给 Java 应用程序的一个参数,用于启动调试模式。具体效果取决于应用程序如何处理这个参数。

>./mini.log:这是一个重定向操作,将标准输出(stdout)重定向到当前目录下的 mini.log 文件中。这意味着应用程序的所有正常输出都会被写入这个日志文件。

2>&1:这是另一个重定向操作,将标准错误(stderr)重定向到标准输出(stdout)。由于标准输出已经被重定向到 mini.log,这意味着错误输出也会被写入同一个日志文件。

&:这个符号将命令置于后台执行。这意味着脚本会继续执行后续的命令,而不需要等待这个 Java 应用程序运行完成。

综上所述,这个脚本命令的作用是在后台启动一个 Java 应用程序,设置最大堆内存为 600MB,启用调试模式,并将所有的标准输出和错误输出重定向到 mini.log 文件中,同时确保应用程序在你退出终端或登录会话后仍然继续运行。

 

4.查看日志

上面的命令把java启动后 日志输出到同目录下的 mini.log中

现在要实时查看是否启动成功和日志,可以用下面命令查看

tail -f mini.log

解释:

tail -f mini.log 是一个在类Unix操作系统中常用的命令,用于实时查看文件的最新内容。这个命令特别适用于监视日志文件的实时更新,因为它会持续跟踪文件的增长,并实时显示新添加到文件末尾的内容。

命令解析
tail:这是一个用于显示文件末尾内容的命令。默认情况下,它会显示文件的最后10行,但这个数字可以通过 -n 选项来修改。

-f 或 --follow:这个选项是 tail 命令的一个参数,用于实时跟踪文件的更新。当与日志文件一起使用时,-f 选项会持续输出文件的新内容,一旦有新内容被追加到文件中。

mini.log:这是你想要监视的文件名。在这个例子中,tail -f mini.log 命令将会持续显示 mini.log 文件的新内容,直到你手动停止命令。

使用场景
tail -f mini.log 命令通常用于以下场景:

监视服务器日志文件,以便实时了解服务器的状态或错误信息。
跟踪应用程序的运行日志,特别是在启动应用程序或执行长时间运行的任务时。
实时查看正在执行的脚本或程序的输出。
停止监视
要停止 tail -f 命令的监视,你可以简单地按下 Ctrl + C。这将中断 tail 命令,并返回到命令行提示符。

 

标签:mini,java,log,文件,部署,实践,应用程序,命令,Java
From: https://www.cnblogs.com/Hello233/p/18079999

相关文章

  • Java SE入门及基础(45)
    目录I/O流(中)3.字符流Writer常用方法FileWriter构造方法Reader常用方法FileReader构造方法综合练习4.缓冲流BufferedOutputStream构造方法BufferedInputStream构造方法BufferedWriter构造方法BufferedReader构造方法Java SE文章参考:JavaSE入门及......
  • java:形参和返回值
    一、抽象类名作为形参和返回值方法形参是抽象类名,其实需要的是该抽象类的子类对象方法的返回值是抽象类名,其实返回的是该抽象类的子类对象二、接口名称作为形参和返回值方法的形参是接口名,其实需要的是该接口的实现类对象方法返回值是接口名,其实返回的是该接口的实现类对象......
  • C#异步编程:原理与实践
    一、引言在现代应用程序开发中,尤其是在涉及I/O操作(如网络请求、文件读写等)时,异步编程成为了提高性能和用户体验的关键技术。C#作为.NET框架下的主流开发语言,提供了强大的异步编程支持,通过async/await关键字,可以让开发者以同步的方式编写异步代码,极大地简化了异步编程的复杂性。本......
  • java jar打包加密操作
    配置XJar加密依赖在pom.xml文件配置XJar加密依赖点击查看代码<!--反编译依赖类--><pluginRepositories><pluginRepository><id>jitpack.io</id><url>https://jitpack.io</url></pluginRepository></pluginRepo......
  • 基于Java的厦门旅游电子商务预订系统(Vue.js+SpringBoot)
    目录一、摘要1.1项目介绍1.2项目录屏二、功能模块2.1景点类型模块2.2景点档案模块2.3酒店管理模块2.4美食管理模块三、系统设计3.1用例设计3.2数据库设计3.2.1学生表3.2.2学生表3.2.3学生表3.2.4学生表四、系统展示五、核心代码5.1新增景点类型5.2查......
  • 【粉丝福利社】商业分析思维与实践:用数据分析解决商业问题(文末送书-进行中)
    ......
  • Java学习系列(三):数组
    一、数组的基本概念及作用数组:是一组相同数据类型元素的集合,是一个容器①数组可以存储基本数据类型,也可以存储引用数据类型②数组创建时必须指定长度,且长度不可变③数组中每个元素空间是连续的声明数组格式:数据类型[]数组名字例如:int[]a;数据类型数组的名字[]......
  • Python实践:基于Matplotlib实现某产品全年销量数据可视化
    本文分享自华为云社区《画图实战-Python实现某产品全年销量数据多种样式可视化》,作者:虫无涯。学习心得有时候我们需要对某些数据进行分析,得到一些可视化效果图,而这些效果图可以直观展示给我们数据的变化趋势;比如某产品的月销量数据、销售额的地区分布、销售增长和季节的变......
  • 《手把手教你》系列技巧篇(四十)-java+ selenium自动化测试-JavaScript的调用执行-下篇(
    1.简介 在实际工作中,我们需要对处理的元素进行高亮显示,或者有时候为了看清楚做跟踪鼠标点击了哪些元素需要标记出来。今天宏哥就在这里把这种测试场景讲解和分享一下。2.用法创建一个执行JS的对象,也就是JavascriptExecutor对象,这个对象是由driver进行强制类型转......
  • Java
    一.基本开发步骤编写代码,形成filename.java源代码文件文件名称继续为java为结尾文件名称必须与类名称一致使用javac编译,形成filename.class字节码文件cmd:javacfilename.java使用java运行cmd:javafilename(绝对绝对不要class!!!)`JDK11以上才能直接运行......