我正在使用来自 www.yworks.com 的 yDoc 来生成 java 文档。但是,我在使用 jdk 8 时遇到以下错误。避免此问题的一种方法是在我的代码中使用 java 7,但是,我不能采用此选项,因为这意味着我还必须花费重构才能在任何地方使用 java 7 java 8 构造。有没有办法在 java 8 中运行编译器和在 java 7 中运行 javadoc?
我还将感谢详细解释为什么会发生此异常,因为我知道 java 8 具有类 the methodcom.sun.tools.doclets.internal.toolkit.taglets.TagletManager.getConstructorCustomTags()
下面是来自 maven 的完整错误
[ERROR] Exit code: 1 - javadoc: warning - No source files for package com.ebucks.shop.vouchers.vms.tutuka
[ERROR] javadoc: error - In doclet class ydoc.doclets.YStandard, method start has thrown an exception java.lang.reflect.InvocationTargetException
[ERROR] java.lang.NoSuchMethodError: com.sun.tools.doclets.internal.toolkit.taglets.TagletManager.getConstructorCustomTags()[Lcom/sun/tools/doclets/internal/toolkit/taglets/Taglet;
[ERROR] at ydoc.doclets.F$_A.<init>(Unknown Source)
[ERROR] at ydoc.doclets.F.B(Unknown Source)
[ERROR] at ydoc.doclets.F.E(Unknown Source)
[ERROR] at ydoc.doclets.J.setSpecificDocletOptions(Unknown Source)
[ERROR] at com.sun.tools.doclets.internal.toolkit.Configuration.setOptions(Configuration.java:560)
[ERROR] at ydoc.doclets.J.setOptions(Unknown Source)
[ERROR] at ydoc.doclets.C.A(Unknown Source)
[ERROR] at ydoc.doclets.YStandard.start(Unknown Source)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[ERROR] at java.lang.reflect.Method.invoke(Method.java:497)
[ERROR] at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:310)
[ERROR] at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:189)
[ERROR] at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:366)
[ERROR] at com.sun.tools.javadoc.Start.begin(Start.java:219)
[ERROR] at com.sun.tools.javadoc.Start.begin(Start.java:205)
[ERROR] at com.sun.tools.javadoc.Main.execute(Main.java:64)
[ERROR] at com.sun.tools.javadoc.Main.main(Main.java:54)