Use generated Java files themselves for stale source detection
--------------------------------------------------------------

                 Key: MJAVACC-30
                 URL: http://jira.codehaus.org/browse/MJAVACC-30
             Project: Maven 2.x JavaCC Plugin
          Issue Type: Improvement
    Affects Versions: 2.2
         Environment: Maven 2.0.7, JDK 1.5.0_12, WinXP
            Reporter: Benjamin Bentmann
            Priority: Minor


If I understand the StaleSourceScanner correctly, the parameter 
timestampDirectory should be unnecessary. The same effect of output generation 
only upon modified/updated grammar files could be achieved by comparing the 
timestamps of the grammar files against the timestamps of the java files (and 
not copies of the grammar files). The required code changes should be minimal, 
i.e. simply change lines like {code}SuffixMapping mapping = new SuffixMapping( 
".jj", ".jj" );{code} to {code}SuffixMapping mapping = new SuffixMapping( 
".jj", ".java" );{code} and pass the (base) output directory rather than the 
timestamp directory into computeStaleGrammars().

The proposed change should yield the same conditional output generation for the 
use case where the output directory is set to something under 
${basedir}/target. However, it should perform better for such use cases where 
the java files are generated into a non-temporary/version-controlled directory 
like ${basedir}/src/main/java. Currently, a "mvn clean generate-sources" will 
always trigger the generation of output regardless whether necessary or not 
because the timestamp files do not exist (any more). Taking the output files 
for the timestamp test should avoid this unwanted effect.


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email

Reply via email to