lucene-dev mailing list archives

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

     [ https://issues.apache.org/jira/browse/LUCENE-4409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

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 package-info.java 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: https://issues.apache.org/jira/browse/LUCENE-4409
>             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 Codec.java, 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/Codec.java
(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: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message