Izpack не может найти класс пользовательских действий, определенных для InstallPanel
Я использую 5.0.0-rc4 в качестве версии izpack и izpack-installer
Артефакт существует как зависимость в моем pom.xml.
<dependency>
<groupId>org.codehaus.izpack</groupId>
<artifactId>izpack-installer</artifactId>
<version>${izpack.version}</version>
</dependency>
Я определил пользовательское действие DeletePreviousInstallationAction
за InstallPanel
,
Определение InstallPanel включено в install.xml, как показано ниже.
<panels>
<panel classname="TargetPanel"/>
<panel classname="UserInputPanel" id="panelUserInput"/>
<panel classname="InstallPanel">
<actions>
<action stage="preconstruct" classname="com.x.y.z.w.DeletePreviousInstallationAction" />
</actions>
</panel>
<panel classname="ProcessPanel"/>
<panel classname="SimpleFinishPanel"/>
</panels>
DeletePreviousInstallationAction
код:
package com.x.y.z.w;
import com.izforge.izpack.api.data.InstallData;
import com.izforge.izpack.api.data.PanelActionConfiguration;
import com.izforge.izpack.api.handler.AbstractUIHandler;
import com.izforge.izpack.data.PanelAction;
public class DeletePreviousInstallationAction implements PanelAction {
@Override
public void executeAction(InstallData id, AbstractUIHandler auih) {
System.out.println("Intall path: " + id.getInstallPath());
}
@Override
public void initialize(PanelActionConfiguration pac) {
}
}
Когда я пытаюсь построить проект установки, я получаю Failure: класс 'com.xyzwDeletePreviousInstallationAction' не найден. Почему это происходит?
1 ответ
Скорее всего, вам не хватает его во время компиляции, его нужно добавить в раздел "jar" для установки xml из izpack, например:
<jar src="@{jmx4ant:jmx4ant:jar}" stage="both" />