Thomas Darimont
Erfahrenes Mitglied
Hallo!
Als ich gerade mal mit javadoc Dokumentation erzeugen wollte bekam ich einen merkwürdigen Fehler zu Gesicht:
Nach ein wenig googeln habe ich dann herausgefunden, dass das ganze von einem Claspath Problem herrührt:
(...da hat mir also JMF hinterrücks die Classpath Umgebungsvariable gesetzt grrrrrr...)
Wenn ich die Classpath Variable entferne:
Dann läufts durch
Unter Eclipse 3.x fällt Javadoc übrigens auch auf die Nase...
Gruß Tom
Als ich gerade mal mit javadoc Dokumentation erzeugen wollte bekam ich einen merkwürdigen Fehler zu Gesicht:
Code:
E:\eclipse\3.1.1\eclipse\workspace\de.tutorials.irclogger>javadoc -bootclasspath C:\Programme\Java\jdk1.5.0_04\jre\lib\rt.jar;C:\Programme\Java\jdk1.5.0_04\lib\tools.jar; -classpath bin;lib/activation.jar;lib/commons-collections.jar;lib/commons-lang.jar;lib/commons-logging.jar;lib/log4j-1.2.9.jar;lib/mail.jar;lib/pircbot.jar;lib/spring.jar -protected -d doc -sourcepath src -subpackages java:de.tutorials
Loading source files for package de.tutorials.irclogger.bot...
Loading source files for package de.tutorials.irclogger.bot.commands...
Loading source files for package de.tutorials.irclogger.bot.commands.registry...
Loading source files for package de.tutorials.irclogger.bot.commands.registry.impl...
Loading source files for package de.tutorials.irclogger.bot.mail.impl...
Loading source files for package de.tutorials.irclogger.bot.mail...
Loading source files for package de.tutorials.irclogger.bot.persistence...
Loading source files for package de.tutorials.irclogger.bot.persistence.impl...
Loading source files for package de.tutorials.irclogger.bot.transform...
Loading source files for package de.tutorials.irclogger...
Constructing Javadoc information...
Standard Doclet version 1.5.0_04
Building tree for all the packages and classes...
Generating doc\de/tutorials/irclogger/bot/\ChannelState.html...
java.lang.IllegalArgumentException
at sun.net.www.ParseUtil.decode(ParseUtil.java:183)
at sun.misc.URLClassPath$FileLoader.<init>(URLClassPath.java:863)
at sun.misc.URLClassPath$3.run(URLClassPath.java:319)
at java.security.AccessController.doPrivileged(Native Method)
at sun.misc.URLClassPath.getLoader(URLClassPath.java:313)
at sun.misc.URLClassPath.getLoader(URLClassPath.java:290)
at sun.misc.URLClassPath.findResource(URLClassPath.java:141)
at java.net.URLClassLoader$2.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findResource(URLClassLoader.java:359)
at java.lang.ClassLoader.getResource(ClassLoader.java:977)
at java.lang.ClassLoader.getResourceAsStream(ClassLoader.java:1159)
at javax.xml.parsers.SecuritySupport$4.run(SecuritySupport.java:72)
at java.security.AccessController.doPrivileged(Native Method)
at javax.xml.parsers.SecuritySupport.getResourceAsStream(SecuritySupport.java:65)
at javax.xml.parsers.FactoryFinder.findJarServiceProvider(FactoryFinder.java:213)
at javax.xml.parsers.FactoryFinder.find(FactoryFinder.java:185)
at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:107)
at com.sun.tools.doclets.internal.toolkit.builders.LayoutParser.parseXML(LayoutParser.java:72)
at com.sun.tools.doclets.internal.toolkit.builders.ClassBuilder.build(ClassBuilder.java:108)
at com.sun.tools.doclets.formats.html.HtmlDoclet.generateClassFiles(HtmlDoclet.java:155)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.generateClassFiles(AbstractDoclet.java:164)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:106)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.start(AbstractDoclet.java:64)
at com.sun.tools.doclets.formats.html.HtmlDoclet.start(HtmlDoclet.java:42)
at com.sun.tools.doclets.standard.Standard.start(Standard.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:269)
at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:143)
at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:340)
at com.sun.tools.javadoc.Start.begin(Start.java:128)
at com.sun.tools.javadoc.Main.execute(Main.java:41)
at com.sun.tools.javadoc.Main.main(Main.java:31)
com.sun.tools.doclets.internal.toolkit.util.DocletAbortException
at com.sun.tools.doclets.internal.toolkit.builders.LayoutParser.parseXML(LayoutParser.java:79)
at com.sun.tools.doclets.internal.toolkit.builders.ClassBuilder.build(ClassBuilder.java:108)
at com.sun.tools.doclets.formats.html.HtmlDoclet.generateClassFiles(HtmlDoclet.java:155)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.generateClassFiles(AbstractDoclet.java:164)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:106)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.start(AbstractDoclet.java:64)
at com.sun.tools.doclets.formats.html.HtmlDoclet.start(HtmlDoclet.java:42)
at com.sun.tools.doclets.standard.Standard.start(Standard.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:269)
at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:143)
at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:340)
at com.sun.tools.javadoc.Start.begin(Start.java:128)
at com.sun.tools.javadoc.Main.execute(Main.java:41)
at com.sun.tools.javadoc.Main.main(Main.java:31)
com.sun.tools.doclets.internal.toolkit.util.DocletAbortException
at com.sun.tools.doclets.formats.html.HtmlDoclet.generateClassFiles(HtmlDoclet.java:159)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.generateClassFiles(AbstractDoclet.java:164)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:106)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.start(AbstractDoclet.java:64)
at com.sun.tools.doclets.formats.html.HtmlDoclet.start(HtmlDoclet.java:42)
at com.sun.tools.doclets.standard.Standard.start(Standard.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:269)
at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:143)
at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:340)
at com.sun.tools.javadoc.Start.begin(Start.java:128)
at com.sun.tools.javadoc.Main.execute(Main.java:41)
at com.sun.tools.javadoc.Main.main(Main.java:31)
Nach ein wenig googeln habe ich dann herausgefunden, dass das ganze von einem Claspath Problem herrührt:
Code:
E:\eclipse\3.1.1\eclipse\workspace\de.tutorials.irclogger>echo %CLASSPATH%
.;.;C:\PROGRA~1\JMF21~1.1E\lib\sound.jar;C:\PROGRA~1\JMF21~1.1E\lib\jmf.jar;C:\PROGRA~1\JMF21~1.1E\lib;%systemroot%\java\classes;.
Wenn ich die Classpath Variable entferne:
Code:
E:\eclipse\3.1.1\eclipse\workspace\de.tutorials.irclogger>set CLASSPATH=
E:\eclipse\3.1.1\eclipse\workspace\de.tutorials.irclogger>echo %CLASSPATH%
%CLASSPATH%
Dann läufts durch
Code:
E:\eclipse\3.1.1\eclipse\workspace\de.tutorials.irclogger>javadoc -classpath bin;lib/activation.jar;lib/commons-collections.jar;lib/commons-lang.jar;lib/commons-logging.jar;lib/log4j-1.2.9.jar;lib/mail.jar;lib/pircbot.jar;lib/spring.jar -protected -d doc -sourcepath src -subpackages java:de.tutorials
Loading source files for package de.tutorials.irclogger.bot...
Loading source files for package de.tutorials.irclogger.bot.commands...
Loading source files for package de.tutorials.irclogger.bot.commands.registry...
Loading source files for package de.tutorials.irclogger.bot.commands.registry.impl...
Loading source files for package de.tutorials.irclogger.bot.mail.impl...
Loading source files for package de.tutorials.irclogger.bot.mail...
Loading source files for package de.tutorials.irclogger.bot.persistence...
Loading source files for package de.tutorials.irclogger.bot.persistence.impl...
Loading source files for package de.tutorials.irclogger.bot.transform...
Loading source files for package de.tutorials.irclogger...
Constructing Javadoc information...
Standard Doclet version 1.5.0_04
Building tree for all the packages and classes...
Generating doc\de/tutorials/irclogger/bot/\ChannelState.html...
Generating doc\de/tutorials/irclogger/bot/\ChatbotVersion.html...
Generating doc\de/tutorials/irclogger/bot/\ProtocolBot.html...
Generating doc\de/tutorials/irclogger/bot/commands/\AbstractCommand.html...
Generating doc\de/tutorials/irclogger/bot/commands/\HelpCommandImpl.html...
Generating doc\de/tutorials/irclogger/bot/commands/\RecordCommandImpl.html...
Generating doc\de/tutorials/irclogger/bot/commands/\RejoinCommandImpl.html...
Generating doc\de/tutorials/irclogger/bot/commands/\VersionCommand.html...
Generating doc\de/tutorials/irclogger/bot/commands/registry/\ICommandRegistry.html...
Generating doc\de/tutorials/irclogger/bot/commands/registry/impl/\CommandRegistryImpl.html...
Generating doc\de/tutorials/irclogger/bot/mail/impl/\ProtocolMailerImpl.html...
Generating doc\de/tutorials/irclogger/bot/mail/\IProtocolMailer.html...
Generating doc\de/tutorials/irclogger/bot/persistence/\IChannelStatePersister.html...
Generating doc\de/tutorials/irclogger/bot/persistence/impl/\ChannelStatePersisterImpl.html...
Generating doc\de/tutorials/irclogger/bot/transform/\IProtocolTransformer.html...
Generating doc\de/tutorials/irclogger/\Launcher.html...
Generating doc\overview-frame.html...
Generating doc\de/tutorials/irclogger/\package-frame.html...
Generating doc\de/tutorials/irclogger/\package-summary.html...
Generating doc\de/tutorials/irclogger/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/commands/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/commands/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/commands/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/commands/registry/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/commands/registry/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/commands/registry/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/commands/registry/impl/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/commands/registry/impl/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/commands/registry/impl/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/mail/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/mail/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/mail/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/mail/impl/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/mail/impl/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/mail/impl/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/persistence/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/persistence/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/persistence/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/persistence/impl/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/persistence/impl/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/persistence/impl/\package-tree.html...
Generating doc\de/tutorials/irclogger/bot/transform/\package-frame.html...
Generating doc\de/tutorials/irclogger/bot/transform/\package-summary.html...
Generating doc\de/tutorials/irclogger/bot/transform/\package-tree.html...
Generating doc\constant-values.html...
Building index for all the packages and classes...
Generating doc\overview-tree.html...
Generating doc\index-all.html...
Generating doc\deprecated-list.html...
Building index for all classes...
Generating doc\allclasses-frame.html...
Generating doc\allclasses-noframe.html...
Generating doc\index.html...
Generating doc\overview-summary.html...
Generating doc\help-doc.html...
Generating doc\stylesheet.css...
Gruß Tom