蚂蚁任务不会在 IzPack 安装程序中运行



。大家好,

我正在学习IzPack,将其作为未来项目中使用的工具,我真的很喜欢它。它可以根据我的需要进行灵活的操作,使过程更加简单。我甚至在github上提交了一个愚蠢的pull请求,并根据我的目的进行了修改。谁知道呢?

虽然我并不觉得它特别复杂,但我已经在尝试使用一种资源时被卡住了好几天。我需要在安装过程的某些点执行某些Ant任务(真正重要的是在所有东西都被解包之前(,但除了所有的efford之外,这些任务都不起作用。:(

我目前的状态,从例子来看似乎是正确的,如下所示:

[我目前对它的使用是基于我在这里找到的一个例子(当它涉及到这些动作时,文档不会太清楚。]

在我的定义xml文件中,我包含了一些内容:

首先是AntActionsSpect.xml和.jar,然后是监听器:

<resources>
    ...
    <res id="AntActionsSpec.xml" src="specs/AntActionsSpec.xml" />
    ...
</resources>
<jar src="libs/ant/ant.jar" stage="both" />
<jar src="libs/ant/ant-launcher.jar" stage="both" />
<listeners>
    <listener classname="AntActionInstallerListener" stage="install" />
    <listener classname="AntActionUninstallerListener" stage="uninstall" />
</listeners>
<pack name="test_app" required="yes" installGroups="Application Core">
...

在specs/AntActionsSpec.xml文件中,我有以下内容:

<pack name="test_app">
    <antcall order="beforepacks" quiet="no" verbose="yes" buildfile="$INSTALL_PATH/ant-tasks.xml">
            <property name="INSTALL_PATH" value="$INSTALL_PATH" />
            <target name="touch_beforepacks" />
    </antcall>
 </pack>

以及ant-tasks.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<project>
    <target name="touch_beforepacks">
        <touch file="$INSTALL_PATH/beforepacks.txt"/>
    </target>
</project>

这里没有什么特别的,只是创建了一个哑文件。

ant-tasks.xml在其他人之前就被解包了。所有的构建都没有错误,即使我在AntActionsSpec或ant-tasks.xml中创建了一个"错误",也表明它们甚至没有被加载,尽管如果我弄乱了定义文件中包含它们的路径,构建就会失败。

我想得到一些帮助来解决这个问题。我可能犯了一些愚蠢的小错误,就是自己看不见。如果你们中的任何人都能提供一个运行构建的例子,那将是一件很好的事情。

如果我能提供更多信息,请告诉我,这样我就可以更新问题了。

非常感谢。

刚刚在谷歌群组讨论的论坛上找到了它:[izpack user]关于变量替换的快速问题。

不幸的是,我会得出结论,这些文件具有误导性。中的文档"AntActionInstallerListener和AntActionUninstallerListener"直到今天都在声明我应该使用这个侦听器配置:

<listeners>
    <listener classname="AntActionInstallerListener" stage="install" />
    <listener classname="AntActionUninstallerListener" stage="uninstall" />
</listeners>

这就是问题所在。将我的XML代码与Google Groups讨论中的代码进行比较,我发现它有不同的用途:

<listeners>
       <listener    installer="AntActionInstallerListener"
                    uninstaller="AntActionUninstallerListener" />
</listeners>

事实上,这就是另一个wiki中给出的指示:Ant Actions(InstallerListener和UninstallerListener(,它指出我可能在幕后出了问题,但这是另一集的故事。

这很管用。Ant任务执行正确。:(我只是找不到Codehaus能让我在哪里登录并编辑文档wiki。>:(.如果有人能支持我进行一些测试,然后为了未来的幸福调整wiki,或者只是给这个疲惫的程序员一个链接,我会很高兴的。

相关内容

  • 没有找到相关文章

最新更新