On Mon, 2 Mar 2026 14:08:02 GMT, David Beaumont <[email protected]> wrote:

>> Adds a new AnnotationProcessor to read the @MigratedValueClass on 
>> prospective value classes and generate the equivalent source file with the 
>> 'value' keyword at each annotated class declaration.
>> 
>> This adds new PROCESSOR_PATH variable to the compilation macro and use it 
>> for annotation processing.
>> This also requires moving the plugin discovery path to the new variable (was 
>> in classpath before) because the addition of a '--processor-path' flag 
>> disables using the classpath for plugin discovery.
>> 
>> For now this is all limited to `java.base` but that's expandable later 
>> easily. There was an issue just enabling it for all modules however (esp. 
>> `jdk.incubator` which might be special).
>> 
>> While there is currently no specific unit test for this code, if it were to 
>> fail to generate the correct value classes, a lot of other downstream tests 
>> would fail.
>
> David Beaumont has updated the pull request incrementally with two additional 
> commits since the last revision:
> 
>  - better error handling
>  - better error handling

I added some use of the Messager API, but not everywhere since some exceptions 
really shouldn't happen (e.g. failing to read files properly). @jddarcy please 
let me know if it looks idiomatic now.

There's currently a weird unreliability wrt the actual builds (incremental 
building sometimes seems to not find the annotation processor, so I think 
there's a dependency missing that would trigger it being re-built (or 
something).

-------------

PR Comment: https://git.openjdk.org/valhalla/pull/2180#issuecomment-3984658070

Reply via email to