Javadoc: как использовать его для документирования одного файла Java в Windows 7? - PullRequest
4 голосов
/ 07 ноября 2010

Я пытаюсь использовать javadoc для документирования одного файла Java в окне 7, чтобы упростить процесс, я использую только следующую простую команду:

javadoc Attr.java

Тем не менее, javadoc дает мне IllegalArgumentException без подробного описания, где это не так, на самом деле файл, который я использовал, скопирован из Java-программирования. Итак, мне интересно, что требуется для использования команды «javadoc» в окне среды.

Кажется, сначала работает ...

Loading source file Attr.java...
Constructing Javadoc information...
Standard Doclet version 1.6.0_20
Building tree for all the packages and classes...
Generating Attr.html...

Но затем он начинает выдавать такие ошибки:

java.lang.IllegalArgumentException
        at sun.net.www.ParseUtil.decode(ParseUtil.java:189)
        at sun.misc.URLClassPath$FileLoader.<init>(URLClassPath.java:958)
        at sun.misc.URLClassPath$3.run(URLClassPath.java:328)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.misc.URLClassPath.getLoader(URLClassPath.java:322)
        at sun.misc.URLClassPath.getLoader(URLClassPath.java:299)
        at sun.misc.URLClassPath.findResource(URLClassPath.java:145)
        at java.net.URLClassLoader$2.run(URLClassLoader.java:385)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findResource(URLClassLoader.java:382)
        at java.lang.ClassLoader.getResource(ClassLoader.java:1003)
        at java.lang.ClassLoader.getResourceAsStream(ClassLoader.java:1193)
        at javax.xml.parsers.SecuritySupport$4.run(SecuritySupport.java:96)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.xml.parsers.SecuritySupport.getResourceAsStream(SecuritySupport.java:89)
        at javax.xml.parsers.FactoryFinder.findJarServiceProvider(FactoryFinder.java:250)
        at javax.xml.parsers.FactoryFinder.find(FactoryFinder.java:223)
        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:128)

Вот файл теста Java, который я использовал:

/**
 * An <code>Attr</code> object defines an attribute as a
 * name/value pair, where the name is a <code>String</code>
 * and the value an arbitrary <code>Object</code>.
 *
 * @version 1.1
 * @author Plato
 * @since 1.0
 */
public class Attr {
    /** The attribute name. */
    private final String name;
    /** The attribute value. */
    private Object value = null;

    /**
     * Creates a new attribute with the given name and an
     * initial value of <code>null</code>.
     * @see Attr#Attr(String,Object)
     */
    public Attr(String name) {
        this.name = name;
    }

    /**
     * Creates a new attribute with the given name and
     * initial value.
     * @see Attr#Attr(String)
     */
    public Attr(String name, Object value) {
        this.name = name;
        this.value = value;
    }

    /** Returns this attribute's name. */
    public String getName() {
        return name;
    }

    /** Returns this attribute's value. */
    public Object getValue() {
        return value;
    }

    /**
     * Sets the value of this attribute.  Changes the
     * value returned by calls to {@link #getValue}.
     * @param newValue  The new value for the attribute.
     * @return  The original value.
     * @see #getValue()
     */
    public Object setValue(Object newValue) {
        Object oldVal = value;
        value = newValue;
        return oldVal;
    }

    /**
     * Returns a string of the form <code>name=value</code>.
     */
    public String toString() {
        return name + "='" + value + "'";
    }
}

/ ===== РЕШЕНИЯ - Спасибо Майклу Боргвардту ========= /

первый выпуск:

set CLASSPATH=. 

тогда

javadoc Attr.java

Ответы [ 3 ]

3 голосов
/ 07 ноября 2010

Хм ... учитывая, что ошибка возникает в ParseUtil, вызываемом URLClassLoader: возможно ли, что у вас установлен набор переменных окружения CLASSPATH, содержимое которого искажено?Попробуйте это:

javadoc -classpath . Attr.java
0 голосов
/ 09 ноября 2016

Вы также можете попробовать: -

javadoc <yourAbsPathToJavaFile>.java

Это сработало для меня.

0 голосов
/ 07 ноября 2010

Убедитесь, что ваш рабочий каталог совпадает с каталогом, содержащим Attr.java.Команда должна работать так, как указано.

...