[izpack-users] <executable ...> doesn't work

Hans-Georg Michna hans-georg at michna.com
Thu Oct 26 14:03:00 CEST 2006


On Thu, 26 Oct 2006 12:10:23 +0200, Bartz, Klaus wrote:

>I assume, that the files which should be execut exist.

Yes, sure.

>I assume we speak about OS Windows.

Yes.

>Attached a zip file which contains a test installation project.
>Unpack it, adapt %IZPACK_HOME% and may be the java.exe call,
>compile, go in a cmd into the dir "execute\dest", execute
>java -jar install.jar
>After installation the files IzPackBatchTest and IzPackBatchTest2
>should be exist in the installation directory.
>In the subdir lib install_helper.bat and uninstall_helper.bat
>should be exist, but not install_helper2.bat and none of the 
>shell scripts for unix.
>Go in a cmd into the parent dir of the installation dir. Call
>java -jar <Install dir>\uninstaller\uninstaller.jar
>Select all files NOT. Uninstall.
>The install dir should exist, in it the two log files should exist.
>These files are not installed else written by shellscripts. Therefore
>they have to exist if not all files in the dir should be removed.
>After uninstall
>$USER_HOME\IzPackUninstallBatchTest
>exist.
>Report your results

Everything worked as you described it. In your installer the
problem does not occur. IzPack works as expected. The error
doesn't seem to occur in a small, simple installation.

The difference is obvious. When I use -DTRACE=TRUE with your
installer, I get a complete log for all executable files.
Everything looks perfect.

When I use the same with my installer, I get a log that shows
the first executable file running fine, then I get the error,
"com.izforge.izpack.installer.ResourceNotFoundException: Can not
find Resource UninstallerIcon for language eng".

After a few additional error lines the log ends. It doesn't show
the other executable files, probably because it has stopped
working after the error. Here's a longer part of the end of my
log:

----- Begin log excerpt -----
checking if os constraints [Os  family windows name null version
null arch null ] match current OS
matched current OS.
executeCommand
	params: C:\Programme\Ovise
Search\lib\office_install_helper.bat

stdout:

Z:\installer\distribution\Ovise_IzPack\installer_untested>rem
Register Office DLLs: 

Z:\installer\distribution\Ovise_IzPack\installer_untested>regsvr32
/s "C:\Dokumente und
Einstellungen\HG\Anwendungsdaten\Microsoft\AddIns\OviseSearchForOffice.dll"
Z:\installer\distribution\Ovise_IzPack\installer_untested>regsvr32
/s "C:\Programme\Ovise Search\lib\Redemption.dll" 

Z:\installer\distribution\Ovise_IzPack\installer_untested>rem

stderr:

exit status: 0

com.izforge.izpack.installer.ResourceNotFoundException: Can not
find Resource UninstallerIcon for language eng

ZipException in writing custom data: duplicate entry:
com/izforge/izpack/util/OSClassHelper.class

ZipException in writing custom data: duplicate entry:
com/izforge/izpack/util/os/RegistryHandler.class

ZipException in writing custom data: duplicate entry:
com/izforge/izpack/util/os/Win_RegistryHandler.class

ZipException in writing custom data: duplicate entry:
com/izforge/izpack/util/os/WrappedNativeLibException.class

ZipException in writing custom data: duplicate entry:
com/izforge/izpack/util/IoHelper.class
----- End of log -----

It seems that the error is caused by the installer trying to
find a resource named UninstallerIcon. I don't know where that
comes from. Neither my files, nor any IzPack documentation files
contain that word. I have no idea why the installer looks for
that resource.

I think that "UninstallerIcon" is the key to understanding this
problem. I append my install.xml file below.

Thanks for bearing with me. I'm certainly unable to solve this
problem without help. I've tried all kinds of modifications in
the hope of hitting the cause, but I couldn't get rid of the
error.

Hans-Georg


<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<installation version="1.0">
    <info>
        <appname>Ovise Search</appname>
        <appversion>0</appversion>
        <authors>
            <author name="Ingent" email="info at ingent.com"/>
        </authors>
        <url>http://www.ingent.com/</url>
    </info>
    <!-- GUI preferences -->
    <guiprefs width="782" height="355" resizable="yes"/>
    <!-- Locale section -->
    <locale>
        <langpack iso3="eng"/>
    </locale>
	<variables>
	  <variable name="InstallerFrame.logfilePath"
value="$INSTALL_PATH/Uninstaller/install.log"/> 
	  <variable name="DesktopShortcutCheckboxEnabled"
value="true"/> 
	</variables>
    <listeners>
        <listener installer="RegistryInstallerListener"
uninstaller="RegistryUninstallerListener">
            <os family="windows"/>
        </listener>
    </listeners>
    <native type="3rdparty" name="COIOSHelper.dll" stage="both">
        <os family="windows"/>
    </native>
    <native type="izpack" name="ShellLink.dll"/>
    <!-- Resources section. Ids must be exactly like this. -->
    <resources>
        <res id="HTMLInfoPanel.info" src="info.htm"/>
        <res id="LicencePanel.licence" src="license.txt"/>
        <res id="RegistrySpec.xml" src="Win_registry.xml"/>
        <res id="shortcutSpec.xml" src="Win_shortcutSpec.xml"/>
        <res id="Unix_shortcutSpec.xml"
src="Unix_shortcutSpec.xml"/>
        <res id="Installer.image.0" src="pane0.png"/>
        <res id="Installer.image.1" src="pane1.png"/>
        <res id="Installer.image.2" src=""/>
    </resources>
    <!-- Panels section. Order will be respected. -->
    <panels>
        <panel classname="HelloPanel"/>
        <panel classname="HTMLInfoPanel"/>
        <panel classname="LicencePanel"/>
        <panel classname="TargetPanel"/>
        <panel classname="PacksPanel"/>
        <panel classname="ShortcutPanel"/>
        <panel classname="InstallPanel"/>
        <panel classname="SimpleFinishPanel"/>
    </panels>
    <!-- Packs section -->
    <packs>
        <pack name="Ovise Server" required="yes">
            <description>Essential Ovise system components
(required)</description>
            <fileset dir="../../runtime" excludes="configuration
configuration/**/*" targetdir="$INSTALL_PATH"/>
            <fileset os="windows" dir="platforms/windows"
targetdir="$INSTALL_PATH"/>
            <fileset os="unix" dir="platforms/unix"
targetdir="$INSTALL_PATH"/>
            <fileset os="mac" dir="platforms/mac"
targetdir="$INSTALL_PATH"/>
            <file os="windows" src="../../runtime/configuration"
targetdir="${ENV[APPDATA]}/OviseSearch"/>
            <file os="unix" src="../../runtime/configuration"
targetdir="$INSTALL_PATH"/>
            <file os="mac" src="../../runtime/configuration"
targetdir="$INSTALL_PATH"/>
            <parsable os="windows"
targetfile="$INSTALL_PATH/lib/install_helper.bat"/>
            <executable os="windows"
targetfile="$INSTALL_PATH/lib/install_helper.bat"/>
            <parsable os="windows"
targetfile="$INSTALL_PATH/lib/install_helper.vbs"/>
            <!--executable os="windows" stage="never"
targetfile="$INSTALL_PATH/lib/install_helper.vbs"/-->
            <parsable os="windows"
targetfile="$INSTALL_PATH/lib/uninstall_helper.bat"/>
            <executable os="windows" stage="uninstall"
targetfile="$INSTALL_PATH/lib/uninstall_helper.bat"/>
            <parsable os="windows"
targetfile="$INSTALL_PATH/lib/uninstall_helper.vbs"/>
            <!--executable os="windows" stage="never"
targetfile="$INSTALL_PATH/lib/uninstall_helper.vbs"/-->
            <parsable os="windows"
targetfile="$INSTALL_PATH/lib/search.vbs"/>
            <!--executable os="windows" stage="never"
targetfile="$INSTALL_PATH/lib/search.vbs"/-->
            <parsable os="windows"
targetfile="$INSTALL_PATH/startServer.cmd"/>
            <parsable os="windows"
targetfile="$INSTALL_PATH/startServerDebug.cmd"/>
            <parsable os="unix"
targetfile="$INSTALL_PATH/startServer.sh"/>
            <parsable os="mac"
targetfile="$INSTALL_PATH/startServer.sh"/>
        </pack>
        <pack name="Windows Explorer context menu command"
os="windows" required="no">
            <description>Test1</description>
        </pack>
        <pack name="Office toolbar button" os="windows"
required="no">
            <description>Test2</description>
            <file os="windows" src="OviseSearchForOffice.dll"
targetdir="${ENV[APPDATA]}/Microsoft/AddIns"/>
            <parsable os="windows"
targetfile="$INSTALL_PATH/lib/office_install_helper.bat"/>
            <executable os="windows" stage="postinstall"
targetfile="$INSTALL_PATH/lib/office_install_helper.bat"/>
        </pack>
    </packs>
</installation>

-- 
No mail, please.




More information about the izpack-users mailing list