链接进度条到Install4j中的批处理文件执行

时间:2016-05-03 19:11:02

标签: java install4j

我可以将progess栏链接到install4j执行批处理文件吗?

我可以通过ProcessBuilder执行我的批处理文件或shell文件,但我不确定如何在install4j中发出进度条信号

运行脚本步骤

File installationDir = new File((String)context.getVariable("sys.installationDir"));
File executable = new File(installationDir, "bin/start.sh");
File logFile = new File(installationDir, "autorun.out.log");

ProcessBuilder pb = new ProcessBuilder(executable.getAbsolutePath(), 
"-p", (String)context.getVariable("projectsdir"),
"-n", (String)context.getVariable("projectname"));

 pb.redirectErrorStream(true);
 pb.redirectOutput(logFile);
 pb.directory(installationDir);
 Process p = pb.start();
 p.waitFor();
return (p.exitValue() == 0);

1 个答案:

答案 0 :(得分:1)

如果屏幕上显示进度条,您可以通过调用

来设置进度
context.getProgressInterface().setPercentCompleted(...);

为此目的,您需要一个百分比值。如果您没有这样的值,可以通过调用

将进度条设置为不确定
context.getProgressInterface().setIndeterminateProgress(true);

使用"设置进度条"也可以设置进度。动作。