java - 如何像在后台那个目录中一样执行脚本(例如 mvnw)?

标签 java linux bash

我有我的 Maven 应用程序,您可以在其中“cd”到此目录/path/app/execute/。并运行“mvnw”,应用程序将正常启动。

我的问题是我想在此处的父目录中创建一个启动脚本:/path/app/startMyApp.sh。

它的内容是:

nohup /path/app/execute/mvnw &

我的问题是,当我 cd 到/path/app 并运行“./startMyApp.sh”时,我得到:

Error: Could not find or load main class org.apache.maven.wrapper.MavenWrapperMain

我怎样才能将我的脚本保存在“mvnw”可执行文件的父目录中,并且能够像我在该目录中一样作为脚本中的后台进程 (nohup) 执行它?

最佳答案

请注意您问题中“mvnw”和“mvn”之间的区别,如果问题的症结在于将目录更改为 nohup 下的/path/app/execute,则:

nohup sh -c 'cd /path/app/execute; mvnw' &

关于java - 如何像在后台那个目录中一样执行脚本(例如 mvnw)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45723639/

相关文章:

java - Kotlin,代表一个尚未定义的值

java - 如何使用 spring 依赖注入(inject)连接多个 fxml Controller ?

java - Android:写入外部存储的文件不显示

linux - 比较不同文件中文本的脚本

bash - 如何运行 bash 脚本?

linux - 在 Bash 中执行 TAR 失败

java - 通常,当 java 返回 "The parameter is incorrect"时,这意味着什么

c - linux中的signal,int 0x80是谁调用的?

regex - 无法从文件中获取正确的输出

Linux设备驱动程序: stream data into a single register