Shell jar 文件的脚本

Shell script for jar file

我有一个基于 Spring Boot 的应用程序,其结构如下:

|-- src
|   |-- main
|      |-- java
|         |-- api
|         |-- core
|   |-- resources
|-- public
|   |--en
|   `pom.xml

当我用 Maven 构建它时,我有一个 jar 文件和一个包含 html 个文件的 public 文件夹。我试图制作一个启动 Web 服务器的 shell 脚本并将其添加到 $PATH

#!/bin/bash
java -jar /path-to-jar/myapp.jar 

但是当我从任何不是 /path-to-jar/ 的文件夹启动它时,服务器崩溃,因为找不到 public 文件夹。

是否可以创建一个脚本来引用 /path-to-jar/ 中的文件夹而不是当前路径中的文件夹?

因为它对你有用,所以我把它作为一个答案。最简单的可以是:(cd /your/folder && java -jar /path-to-jar/myapp.jar )

它在子 shell 中运行进程。如果它只是 bash 脚本中的行,则可以省略小括号。我保留大括号的原因是为了避免在获取文件时更改目录,但我相信您只需要一个简单的脚本即可完成工作。