Fehler bei javadoc unter Java 5

Thomas Darimont

Erfahrenes Mitglied
Hallo!

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;.
(...da hat mir also JMF hinterrücks die Classpath Umgebungsvariable gesetzt grrrrrr...)

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...
Unter Eclipse 3.x fällt Javadoc übrigens auch auf die Nase...

Gruß Tom
 
Zurück