在com.install4j.runtime.launcher.WinLauncher.main(WinLauncher.java:26)获取异常

在com.install4j.runtime.launcher.WinLauncher.main(WinLauncher.java:26)获取异常,install4j,xerces,Install4j,Xerces,我已经使用Install4j创建了安装程序。我能够在windows和linux上使用这些安装程序安装该工具 但在windows中,我得到以下例外 StartupHandler.initializeActionManager() ... ERROR: occurred while reading action shcema. ERROR: SAX2 driver class org.apache.xerces.parsers.SAXParser does not implement XMLRead

我已经使用Install4j创建了安装程序。我能够在windows和linux上使用这些安装程序安装该工具

但在windows中,我得到以下例外

StartupHandler.initializeActionManager() ... ERROR: occurred while reading action shcema.
ERROR: SAX2 driver class org.apache.xerces.parsers.SAXParser does not implement XMLReader
org.xml.sax.SAXException: SAX2 driver class org.apache.xerces.parsers.SAXParser does not implement XMLReader
java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
    at org.xml.sax.helpers.XMLReaderFactory.loadClass(Unknown Source)
    at org.xml.sax.helpers.XMLReaderFactory.createXMLReader(Unknown Source)
    at com.appperfect.common.UtilityFunctions.parseXML(UtilityFunctions.java:1981)
    at com.appperfect.installer.common.ActionSchemaReader.loadActionConfigFile(ActionSchemaReader.java:74)
    at com.appperfect.installer.common.ActionSchemaReader.<init>(ActionSchemaReader.java:65)
    at com.appperfect.installer.common.ActionManager.loadActionSchema(ActionManager.java:157)
    at com.appperfect.installer.i4j.handlers.StartupHandler.initializeActionManager(StartupHandler.java:308)
    at com.appperfect.installer.i4j.handlers.StartupHandler.prepareInstaller(StartupHandler.java:86)
    at com.appperfect.installer.i4j.actions.AppStartupAction.install(AppStartupAction.java:43)
    at com.install4j.runtime.installer.ContextImpl$7.executeAction(ContextImpl.java:1668)
    at com.install4j.runtime.installer.ContextImpl$7.fetchValue(ContextImpl.java:1659)
    at com.install4j.runtime.installer.ContextImpl$7.fetchValue(ContextImpl.java:1656)
    at com.install4j.runtime.installer.helper.comm.actions.FetchObjectAction.execute(FetchObjectAction.java:14)
    at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionDirect(HelperCommunication.java:274)
    at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionInt(HelperCommunication.java:249)
    at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionChecked(HelperCommunication.java:187)
    at com.install4j.runtime.installer.helper.comm.HelperCommunication.fetchObjectChecked(HelperCommunication.java:170)
    at com.install4j.runtime.installer.ContextImpl.performActionIntStatic(ContextImpl.java:1656)
    at com.install4j.runtime.installer.InstallerContextImpl.performActionInt(InstallerContextImpl.java:151)
    at com.install4j.runtime.installer.ContextImpl.performAction(ContextImpl.java:1103)
    at com.install4j.runtime.installer.controller.Controller.executeAction(Controller.java:368)
    at com.install4j.runtime.installer.controller.Controller.executeActions(Controller.java:334)
    at com.install4j.runtime.installer.controller.Controller.handleCommand(Controller.java:195)
    at com.install4j.runtime.installer.controller.Controller.handleStartup(Controller.java:116)
    at com.install4j.runtime.installer.controller.Controller.start(Controller.java:73)
    at com.install4j.runtime.installer.Installer.runInProcess(Installer.java:59)
    at com.install4j.runtime.installer.Installer.main(Installer.java:46)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:65)
    at com.exe4j.runtime.WinLauncher.main(WinLauncher.java:101)
    at com.install4j.runtime.launcher.WinLauncher.main(WinLauncher.java:26)
StartupHandler.initializeActionManager()。。。错误:读取操作shcema时发生。
错误:SAX2驱动程序类org.apache.xerces.parsers.SAXParser未实现XMLReader
org.xml.sax.SAXException:SAX2驱动程序类org.apache.xerces.parsers.SAXParser未实现XMLReader
java.lang.ClassCastException:org.apache.xerces.parsers.XIncludeAwareParserConfiguration不能强制转换为org.apache.xerces.xni.parser.XMLParserConfiguration
位于org.xml.sax.helpers.XMLReaderFactory.loadClass(未知源)
位于org.xml.sax.helpers.XMLReaderFactory.createXMLReader(未知源)
位于com.appperfect.common.UtilityFunctions.parseXML(UtilityFunctions.java:1981)
位于com.appperfect.installer.common.ActionSchemaAreader.loadActionConfigFile(ActionSchemaAreader.java:74)
位于com.appperfect.installer.common.ActionSchemaAreader。(ActionSchemaAreader.java:65)
位于com.appperfect.installer.common.ActionManager.loadActionSchema(ActionManager.java:157)
位于com.appperfect.installer.i4j.handlers.StartupHandler.initializeActionManager(StartupHandler.java:308)
位于com.appperfect.installer.i4j.handlers.StartupHandler.prepareInstaller(StartupHandler.java:86)
位于com.appperfect.installer.i4j.actions.AppStartupAction.install(AppStartupAction.java:43)
位于com.install4j.runtime.installer.ContextImpl$7.executeAction(ContextImpl.java:1668)
在com.install4j.runtime.installer.ContextImpl$7.fetchValue(ContextImpl.java:1659)上
在com.install4j.runtime.installer.ContextImpl$7.fetchValue(ContextImpl.java:1656)上
位于com.install4j.runtime.installer.helper.comm.actions.FetchObjectAction.execute(FetchObjectAction.java:14)
位于com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionDirect(HelperCommunication.java:274)
位于com.install4j.runtime.installer.helper.comm.HelperCommunication.executeAction(HelperCommunication.java:249)
位于com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionChecked(HelperCommunication.java:187)
在com.install4j.runtime.installer.helper.comm.HelperCommunication.fetchObjectChecked(HelperCommunication.java:170)
位于com.install4j.runtime.installer.ContextImpl.PerformActionStatic(ContextImpl.java:1656)
在com.install4j.runtime.installer.InstallerContextImpl.PerformAction上(InstallerContextImpl.java:151)
位于com.install4j.runtime.installer.ContextImpl.performAction(ContextImpl.java:1103)
位于com.install4j.runtime.installer.controller.controller.executeAction(controller.java:368)
位于com.install4j.runtime.installer.controller.controller.executeActions(controller.java:334)
位于com.install4j.runtime.installer.controller.controller.handleCommand(controller.java:195)
位于com.install4j.runtime.installer.controller.controller.handleStartup(controller.java:116)
位于com.install4j.runtime.installer.controller.controller.start(controller.java:73)
位于com.install4j.runtime.installer.installer.runInProcess(installer.java:59)
位于com.install4j.runtime.installer.installer.main(installer.java:46)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(未知源)
在sun.reflect.DelegatingMethodAccessorImpl.invoke处(未知源)
位于java.lang.reflect.Method.invoke(未知源)
位于com.exe4j.runtime.launchengine.launch(launchengine.java:65)
位于com.exe4j.runtime.WinLauncher.main(WinLauncher.java:101)
位于com.install4j.runtime.launcher.WinLauncher.main(WinLauncher.java:26)
  • 我在谷歌上搜索了一下,发现这可能是因为xercesImpl.jar的版本不兼容,下载了最新的jar,并尝试过,但没有任何帮助
  • 删除了xercseImpl.jar和xml-api.jar,添加了xerces.jar。但问题依然存在

此问题已在install4j 6.1.6中修复。

您使用的install4j版本是什么?我使用的是install4j的6.1.5版本。谢谢。成功了。由于在windows上安装的install4j上创建安装程序时没有出现错误,您能告诉我是什么问题吗?这是一个与脚本类装入器有关的类装入问题。