java启动与dockerfile构建

本文详细介绍了如何在Java程序中设置UTF-8编码以处理非ASCII字符,包括在Windows和Linux环境下的启动方法,以及如何通过调整JDK堆内存和使用Dockerfile构建镜像。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

启动方法

1.java 加字符编码启动

title integrated
chcp 65001
java -Dfile.encoding=UTF-8 -jar yourJarFile.jar

title 运行标题
chcp 65001 (文件编码为 UTF-8,chcp属于Windows设置命令行窗口的代码页,65001对应utf-8)
-D 是代表加参数的意思

说明:

  • 当Java程序需要读取或写入使用UTF-8编码的文件时,需要设置文件编码为UTF-8,以确保正确读取和写入文件内容。

  • 当Java程序需要处理包含非ASCII字符的字符串时,需要设置编码为UTF-8,以确保正确处理这些字符。

  • 当Java程序需要与其他系统或应用程序交互时,需要设置编码为UTF-8,以确保正确传输和处理数据。

  • 总之,如果Java程序需要处理UTF-8编码的数据或文件,就需要使用“-Dfile.encoding=UTF-8”来设置编码。

2.java 手动配置JDK登录

linux一样可以将目录加在前方

"c:\\Program Files\\java\\jdk-11.0.14\\bin\\"java -Dfile.encoding=utf-8 -jar yourJarFile.jar

说明:

  • c:\Program Files\java\jdk-11.0.14\bin\ 是jdk路径,需要双斜杠,防止无法识别,如“Program Files”中间有空格,双斜杆加路径双引号即可解决此问题

3.Linux配置运行日志存储路径

#!/bin/bash

java -jar runnet-admin-service.jar > logs/runnet-admin-service.log  2>&1 &

说明:

  • 2>&1 将标准错误输出重定向到标准输出。
  • 注意:符号>&是一个整体,不可分开,分开后就不是上述含义了。

4. java占用内存过大,启动时候可以进行配置

在 Windows 上调整 Java 应用程序的堆内存大小可以通过设置 Java 虚拟机的启动参数来实现。常用的启动参数是 -Xms 和 -Xmx,分别表示 Java 虚拟机的初始堆大小和最大堆大小。

你可以按照以下步骤在 Windows 上调整 Java 应用程序的堆内存大小:

**编辑启动脚本:**编辑你的 Java 应用程序的启动脚本(通常是一个 .bat 文件),添加 -Xms 和 -Xmx 参数来设置堆内存大小。例如:

java -Xms512m -Xmx1024m -jar YourApp.jar

这个命令将设置 Java 虚拟机的初始堆大小为 512MB,最大堆大小为 1024MB。

如果线程过多,可以通过-Xss10m控制每个线程的大小,如下:

java -Xss10m -Xms512m -Xmx1024m -jar YourApp.jar
  • 将线程栈大小设置为 10MB(-Xss10m);
  • 将初始堆大小设置为 512MB(-Xms512m);
  • 将最大堆大小设置为 1024MB(-Xmx1024m).

dockerfile构建

  1. dockerfile
FROM trilobite/openjdk-ext:1.0.0

ENV JAVAFILE=e-company-service-1.0.0.jar
ADD ${JAVAFILE} /opt/
EXPOSE 9000
WORKDIR /opt
ENTRYPOINT ["java", "-jar", "e-company-service-1.0.0.jar", "--spring.profiles.active=dev"]
  1. 构建镜像
    docker build -t your-image-name .
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值