最新的Eclipse的xdoclet构建器具有StackOverflowError

时间:2019-12-30 19:53:56

标签: eclipse xdoclet

我将Eclipse从Neon更新到最新的2019-12,并且我有一个旧项目,该项目使用xdoclet生成EJB接口和类。 Neon的xdoclet构建器运行良好,但2019-12的构建器在通过代码更改触发并持续运行直到溢出时遇到StackOverflowError。

两个Eclipse都指向启用了构建器的相同xdoclet 1.2.3安装。

由于如下所示在控制台上生成了打印msg,我比较了2个插件目录,没什么不同。

Buildfile: D:\Workspaces\Magic\.metadata\.plugins\org.eclipse.jst.j2ee.ejb.annotations.xdoclet\tempAnt.xml
init:
ejbdoclet:
[ejbdoclet] (XDocletMain.start                   94  ) Running <deploymentdescriptor/>
[ejbdoclet] Generating EJB deployment descriptor (ejb-jar.xml).
[ejbdoclet] (XDocletMain.start                   94  ) Running <remoteinterface/>
[ejbdoclet] Generating Remote interface for '...'.
...
[ejbdoclet] (XDocletMain.start                   94  ) Running <mdb/>
client.jar:
BUILD SUCCESSFUL

最新的Eclipse 2019-12不断构建和构建并构建,一次又一次地打印与上述相同的成功消息,直到溢出为止。 Eclipse的日志显示它以递归方式调用buildAndLaunch ... 任何提示都欢迎!!!

java.lang.StackOverflowError
    at org.eclipse.core.runtime.ProgressMonitorWrapper.subTask(ProgressMonitorWrapper.java:168)
    at org.eclipse.core.runtime.SubProgressMonitor.subTask(SubProgressMonitor.java:197)
    at org.eclipse.core.runtime.SubMonitor$RootInfo.subTask(SubMonitor.java:255)
...
--1-------------------------------------------------------------------------------
    at org.eclipse.debug.ui.DebugUITools.buildAndLaunch(DebugUITools.java:1027)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.util.AntLauncherUtility.runUsingLauncher(AntLauncherUtility.java:150)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.util.AntLauncherUtility.runAnt(AntLauncherUtility.java:129)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.util.AntLauncherUtility.launch(AntLauncherUtility.java:113)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletAntProjectBuilder$1.run(XDocletAntProjectBuilder.java:118)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2292)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2317)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletAntProjectBuilder.buildUsingAnt(XDocletAntProjectBuilder.java:126)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletBuilder.build(XDocletBuilder.java:215)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletBuilder$2.visit(XDocletBuilder.java:336)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:67)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:51)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletBuilder.doIncrementalBuild(XDocletBuilder.java:344)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletBuilder.build(XDocletBuilder.java:201)
---------------------------------------------------------------------------------
    at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
    at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
    at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
    at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
    at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
    at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:515)
    at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:405)
    at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:838)
    at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:719)
    at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1017)
    at org.eclipse.debug.ui.DebugUITools.buildAndLaunch(DebugUITools.java:1027)
--2-------------------------------------------------------------------------------
    at org.eclipse.debug.ui.DebugUITools.buildAndLaunch(DebugUITools.java:1027)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.util.AntLauncherUtility.runUsingLauncher(AntLauncherUtility.java:150)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.util.AntLauncherUtility.runAnt(AntLauncherUtility.java:129)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.util.AntLauncherUtility.launch(AntLauncherUtility.java:113)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletAntProjectBuilder$1.run(XDocletAntProjectBuilder.java:118)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2292)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2317)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletAntProjectBuilder.buildUsingAnt(XDocletAntProjectBuilder.java:126)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletBuilder.build(XDocletBuilder.java:215)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletBuilder$2.visit(XDocletBuilder.java:336)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:67)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:77)
    at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:51)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletBuilder.doIncrementalBuild(XDocletBuilder.java:344)
    at org.eclipse.jst.j2ee.ejb.annotations.internal.xdoclet.XDocletBuilder.build(XDocletBuilder.java:201)
    at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
---------------------------------------------------------------------------------
...


1 个答案:

答案 0 :(得分:1)

这对我有用,在Eclipse中,您必须在以下位置禁用“启动前构建(如果需要)”: 窗口->首选项->启动->常规选项。

Build (if required) before launching

问候!