#### 第1种执行方式
java -jar applicaton.jar
此方法启动后,无法执行其他命令,若需继续操作,需退出当前窗口,可能导致程序中断。中断通常使用`ctrl+c`。
#### 第2种执行方式
java -jar applicaton.jar &
在第1种基础上添加`&`,表示在后台运行,避免了中断程序运行的问题。但关闭窗口会停止程序。
### 第3种执行方式
nohup java -jar applicaton.jar &
在第2种基础上增加`nohup`,实现程序不挂断运行,即使账户退出或终端关闭,程序依然持续执行。
#### 第4种执行方式
nohup java -jar applicaton.jar >logs/log.txt &
在第3种基础上,将输出内容重定向至`logs/log.txt`文件,输出不显示在当前窗口,只记录于指定文件中。
#### 第5种执行方式:不写日志
nohup java -jar demo.jar >/dev/null 2>&1 &
使用`>/dev/null`将标准输出重定向至空设备文件,避免在终端显示任何信息,适用于不需输出到终端的日志场景。
### 执行参数
- 使用`>/dev/null 2>&1`可以将输出重定向至空设备文件,实现无输出。
- `Xms`、`Xmx`、`Dfile.encoding`、`spring.profiles.active`等参数分别用于设置jvm最小/最大堆内存、文件编码、指定运行配置文件、环境。
### 脚本执行
创建`start.sh`文件,运行`demo.jar`至`logs/log.txt`,示例脚本如下:
nohup java -Xms515m -Xmx1024m -jar -Dfile.encoding=UTF-8 application.jar --spring.profiles.active=prod >/dev/null 2>&1 &
### 参数使用示例
1. `-Xms`:设置最小堆内存,默认为物理内存的1/64,使用示例:`-Xmx512m`。
2. `-Xmx`:设置最大堆内存,默认为物理内存的1/4,使用示例:`-Xmx1024m`。
3. `--server.port`:指定运行端口,使用示例:`--server.port=8080`。
4. `--spring.profiles.active`:指定运行配置文件、环境,使用示例:`--spring.profiles.active=prod`。
### 注入参数执行
使用`java -jar`执行时,注入参数如下:
1. `java -jar boot.jar -Dkey_name=value`:直接添加参数。
2. `java -jar key_name=value`:以键值对形式添加参数。
3. `java -jar boot.jar --key_name=value`:使用`--`前缀添加参数。
② JAR和JAD是什么格式电子书能看吗需要解
JAR是一种Java归档文件格式,JAD是Java应用程序描述文件格式。JAR文件可以用作电子书格式在手机端阅读,但JAD文件本身不是电子书格式,而是描述JAR文件的配置文件。以下是详细解答:
1. JAR格式: 定义:JAR是一种用于打包和部署Java应用程序、类库和资源的文件格式。它基于ZIP格式,但具有额外的功能,如数字签名、压缩和与Java扩展框架的集成。 用途:JAR文件常用于发布Java类库、作为应用程序的扩展单元,以及作为Java应用的部署单元。 电子书:在手机电子书领域,JAR文件可以包含电子书的内容以及相关的Java代码,以实现交互功能。
2. JAD格式: 定义:JAD是一个描述文件,用于为不支持直接读取JAR文件的手机提供关于JAR文件内容的详细信息。 内容:JAD文件通常包含MIDlet的基本信息,如名称、版本、供应商、所需权限等。 电子书:JAD文件本身不是电子书格式,而是作为JAR文件的辅助文件存在。它提供了关于电子书的元数据。
3. 电子书阅读: JAR电子书:对于支持JAR格式电子书的手机,用户可以直接下载并安装JAR文件以进行阅读。这些电子书通常具有丰富的交互功能,如动画、音效和链接跳转。 阅读器:为了阅读JAR格式的电子书,手机需要安装相应的电子书阅读器软件。不是所有手机都支持JAR格式的电子书,但一些品牌的手机通常可以找到兼容的阅读器。 JAD文件:虽然JAD文件不是电子书格式,但在下载和安装JAR电子书时,JAD文件可能作为辅助文件被使用。它提供了关于电子书的必要信息,帮助手机正确识别和安装JAR文件。
综上所述,JAR文件可以用作电子书格式在手机端阅读,而JAD文件是描述JAR文件的配置文件,不是电子书格式本身。