izPack禁用调试窗口

时间:2017-10-31 15:19:16

标签: izpack

我使用Izpack 5.1.2,根据documentation,以下内容用于启用调试信息:

java -DDEBUG=true -jar installer.jar
java -DSTACKTRACE=true -jar installer.jar
java -DTRACE=true -jar installer.jar

还有:

<guiprefs>
   <modifier key="showDebugWindow" value="true"/>
</guiprefs> 

因此,我假设禁用调试信息,因此调试窗口不会显示,我只需要将上面的内容更改为false。

不幸的是,即使将上述所有内容设置为 false ,当我执行安装程序时,调试窗口仍会显示。

为了为java工件创建一个exe,我用launch4j包装它,添加部分将java变量设置为false:

            <plugin>
            <groupId>com.akathist.maven.plugins.launch4j</groupId>
            <artifactId>launch4j-maven-plugin</artifactId>
            <executions>
                <execution>
                    <id>l4j-clui</id>
                    <phase>install</phase>
                    <goals>
                        <goal>launch4j</goal>
                    </goals>
                        <configuration>
                            <headerType>console</headerType>
                            <jar>target/${installer-output-filename}.jar</jar>
                            <outfile>target/${installer-output-filename}.exe</outfile>
                            <classPath>
                                <mainClass>com.izforge.izpack.installer.bootstrap.Installer</mainClass>
                            </classPath>                            
                            <downloadUrl>http://java.com/download</downloadUrl>
                            <jre>
                                <bundledJre64Bit>false</bundledJre64Bit>
                                <bundledJreAsFallback>false</bundledJreAsFallback>
                                <minVersion>1.8.0</minVersion>
                                <jdkPreference>preferJre</jdkPreference>
                                <runtimeBits>64</runtimeBits>
                                <opts>
                                    <opt>-DTRACE=false</opt>
                                    <opt>-DSTACKTRACE=false</opt>
                                    <opt>-DDEBUG=false</opt>
                                </opts>                             
                            </jre>
                            ....

我无法理解为什么在将所有调试变量设置为false后,调试窗口仍会显示。

1 个答案:

答案 0 :(得分:0)

问题不在于IzPack配置,而是在Launch4J配置上,因为 headerType 标签配置不正确:

<headerType>console</headerType>

为了禁用控制台输出我应该使用gui选项:

<headerType>gui</headerType>