lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Muir (JIRA)" <>
Subject [jira] [Updated] (LUCENE-4409) implement javadocs linting with eclipse ecj compiler
Date Mon, 24 Sep 2012 01:58:07 GMT


Robert Muir updated LUCENE-4409:

    Attachment: LUCENE-4409.patch

Almost got this working, two bugs to resolve:
# a bug in eclipse compiler (imo), i tell it to create no class files, but its creating some
for spatial (package-info.class processing) because it uses instead of package.html.
I'll make the macro use a throwaway directory and delete it.
# a bug in solrj javadocs: it links to the lucene queryparser syntax incorrectly. I don't
know why this is working with 'ant javadocs', but it really shouldnt, since lucene queryparser
should not be in its compile classpath. I'll fix it to use docRoot.

> implement javadocs linting with eclipse ecj compiler
> ----------------------------------------------------
>                 Key: LUCENE-4409
>                 URL:
>             Project: Lucene - Core
>          Issue Type: Task
>          Components: general/build
>            Reporter: Robert Muir
>         Attachments: LUCENE-4409.patch
> today we have a lot of custom python scripts checking javadocs (checking for missing
stuff too).
> Most of this is implemented by parsing html etc (some of this should stay this way, like
broken-link detection)
> But actually the eclipse compiler can do most of this type of linting, and has a lot
of options for it. We can pull it via ivy and run it from the command-line.
> I tested this manually by adding a bogus throws clause to, downloading the
ecj.jar from maven and running it manually:
> {noformat}
> rmuir@beast:~/workspace/lucene-trunk/lucene/core/src/java$ java -cp ~/Downloads/ecj-3.7.2.jar
org.eclipse.jdt.internal.compiler.batch.Main -source 1.6 -d none -enableJavadoc -properties
~/workspace/lucene-trunk/dev-tools/eclipse/.settings/org.eclipse.jdt.core.prefs .
> ...
> ----------
> 120. ERROR in /home/rmuir/workspace/lucene-trunk/lucene/core/src/java/./org/apache/lucene/codecs/
(at line 59)
> 	* @throws IOException */
> 	          ^^^^^^^^^^^
> Javadoc: Exception IOException is not declared
> ----------
> {noformat}
> here i specified -d none (don't generate class files), and essentially told it to read
the compiler warnings/errors options set in the dev-tools config. For javadocs-lint we would
want our own separate properties file that disables the ordinary java warnings (because eclipse
can warn/error/ignore on lots of things, not just javadocs, and does by default).
> Separately we could also use this to check/fail/warn on other things besides javadoc...

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message