首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IZpack java条件调试(IZpack 4)

IZpack java条件调试(IZpack 4)
EN

Stack Overflow用户
提问于 2014-02-05 11:27:25
回答 2查看 678关注 0票数 1

我正在运行izpack 4,并且尝试使用一个java条件。

Java类(减去导入并尝试/捕获)-编辑- version.properties位于Test.jar文件的根目录中

代码语言:javascript
复制
public class Test {
    public static boolean testResult() {
        boolean goodVersion = false;
        Properties versionProperties = new Properties();
        InputStream is = Test.class.getClassLoader().getResourceAsStream("version.properties");
        versionProperties.load(is);
        String minimumVersion = versionProperties.getProperty("com.test.version");
        String currentVersion = "2";
        if( Integer.parseInt(currentVersion) - Integer.parseInt(minimumVersion) >= 0) {
            goodVersion = true;
        }
        return isCompatible;
    }
}

Iz状况:

代码语言:javascript
复制
<condition type="java" id="compatibleVersion">
  <java>
    <class>com.Test.Test</class>
    <method>testResult</method>
  </java>
  <returnvalue type="boolean"/>
</condition>

如果在自己的jar中运行java代码或运行java -classpath myInstaller com.Test.Test (带有调用静态方法的主方法),则java代码返回true。

但是,当我运行izpack安装程序时,条件仍然是false (因为捕获声明为false)。

我已经运行了java -DTRACE=true -jar myInstaller.jar,无法从jar中看到任何堆栈跟踪。当捕获相同的结果时(在安装程序外部运行良好,或者使用类路径调用时,但当安装程序运行时,我尝试编写C:/output.txt )。

有人对如何从我的外部jar中获得错误输出有任何建议吗?

EN

回答 2

Stack Overflow用户

发布于 2015-02-16 13:57:19

使用以下方法调用安装程序jar

代码语言:javascript
复制
java -DTRACE=true -DSTACKTRACE=true -DLOG=true -jar myInstaller.jar

将使其登录到C:Users\you\AppData\Local\Temp\IzPack_Logfile_at_...

票数 1
EN

Stack Overflow用户

发布于 2014-02-06 10:28:19

由于似乎没有人对调试有答案,所以我认为发布这个问题可能会有帮助。在这种情况下,问题在于我的iz.xml。

代码语言:javascript
复制
<returnvalue type="boolean"/>

应改为

代码语言:javascript
复制
<returnvalue type="boolean">|||expected return value|||</returnvalue>

因此,将返回true或false,具体取决于预期返回值是否与返回值匹配。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21575945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档