我正在为一个测试 Maven 项目创建构建,该项目具有 myserver.bat、myworker.bat、myui.jar 文件,这些文件将在构建我的项目后创建。我的要求是使用一个“install.sh”自动运行项目,该“install.sh”将在运行项目之前检查环境,然后它将运行 myserver.bat、myworker.bat 和 myui.jar 来运行项目。
如果我运行命令,myui.jar 会在“ui\target”文件夹内创建:
java -jar myui.jar
来自“ui\target”文件夹,然后显示资源未找到错误。但如果我像这样运行它:
java -jar "target\myui.jar"
然后就可以正确运行项目了。
因此,我创建了一个名为 myui.bat 的 bat 文件,其中包含命令:java -jar "target\myui.jar"
我必须将所有命令写入 install.sh 文件以自动运行。
install.sh包含
start 'myproject\bin\myserver.bat' myserver.yml
start 'myproject\bin\myworker.bat' myworker.yml
start 'ui\myui.bat'
它正确启动服务器和工作程序,但对于 ui,它不执行任何操作,因为命令现在是: ..mypath/ui>start java -jar "target\myui.jar"这是不正确的。
如果我直接写:
start 'myproject\bin\myserver.bat' myserver.yml
start 'myproject\bin\myworker.bat' myworker.yml
java -jar "ui\target\myui.jar"
然后它会抛出找不到资源的运行时错误。
如何运行 install.sh 来运行我的 Maven 项目?
最佳答案
我得到了一个解决方案,编写这些内容,进入用户界面,然后运行如下命令:
start 'myproject\bin\myserver.bat' myserver.yml
start 'myproject\bin\myworker.bat' myworker.yml
cd ui
java -jar "target\myui.jar"
关于java - 从批处理文件和 shell 脚本运行目标文件夹中存在的 jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34178916/