java - 执行jar后继续批处理文件

标签 java windows batch-file glassfish

我正在尝试运行一个批处理脚本来创建一个新的 glassfish 域(v 3.1),并且在创建之后它将继续执行一些管理任务,例如删除其他目录或复制文件到新创建的域。问题是,我必须等到 glassfish 安装脚本完成其工作。我尝试创建一个新窗口:

Start /WAIT "" asadmin --user admin --interactive=false create-domain   --adminport 4848  --instanceport 8080  --nopassword new_domain

并在同一个 .bat 文件中运行一些简单的命令(如 xcopy、rd)。问题是,asadmin 脚本完成工作后,新窗口不会关闭,而是保持打开状态,并且整个脚本挂起等待作业终止。我可以手动关闭它并且脚本继续其流程,但这个解决方案并不令人满意。我什至尝试修改 asadmin.bat 脚本以强制其在创建后关闭:

%JAVA% -jar "%~dp0..\glassfish\modules\admin-cli.jar" %* && exit
exit

但这并没有帮助。

最佳答案

正如评论已经建议您必须使用 call 而不是 Start 并且不需要 /WAIT 标志:

echo "Start..."
call asadmin --user admin --interactive=false create-domain   --adminport 4848  --instanceport 8080  --nopassword new_domain
xcopy something...
// more

关于java - 执行jar后继续批处理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26510841/

相关文章:

python - 在 Windows 上使用 os.path 进行 POSIX 路径操作

windows - mono gtk# - hello world 部署到 windows

linux - 将我自己的 Git 服务器与我的 Windows Eclipse IDE 链接起来

batch-file - 批处理文件如果存在超时

java - Spring 在文件名中提供带点的静态内容

java - Apache Flink 的自定义 Prometheus 接收器?

java - 明确指定通配符的上限时有区别吗?

batch-file - 'for' dos 命令中有关 UnxUtils Sed 的一些错误

windows - 来自 FOR 命令的奇怪行为,其中看似无害的空间。解释?

java - 设计一个使用或不使用 Google App Engine 进行部署的应用程序