Skip to content

Commit 43f6f84

Browse files
dfa1claude
andcommitted
build: scope -classfile lint exception to the Arrow-using modules
Previously disabled javac's classfile lint project-wide to dodge the Apache Arrow @Value.Generated bytecode warning. Only integration and performance actually compile against Arrow, so restore full -Xlint:all (classfile included) in the parent and override just those two modules with -Xlint:all,-classfile. Every other module now also enforces the classfile category. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 5d5fcc4 commit 43f6f84

3 files changed

Lines changed: 22 additions & 5 deletions

File tree

integration/pom.xml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,20 @@
154154

155155
<build>
156156
<plugins>
157+
<plugin>
158+
<groupId>org.apache.maven.plugins</groupId>
159+
<artifactId>maven-compiler-plugin</artifactId>
160+
<configuration>
161+
<!-- This module compiles against Apache Arrow, whose classes carry
162+
@org.immutables.value.Generated in their bytecode without exporting
163+
the annotation jar — javac's classfile lint then warns about a
164+
dependency we don't own. Drop only that category here; every other
165+
lint stays strict via the parent's -Werror. -->
166+
<compilerArgs combine.self="override">
167+
<arg>-Xlint:all,-classfile</arg>
168+
</compilerArgs>
169+
</configuration>
170+
</plugin>
157171
<plugin>
158172
<groupId>org.apache.maven.plugins</groupId>
159173
<artifactId>maven-surefire-plugin</artifactId>

performance/pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,13 @@
103103
<artifactId>maven-compiler-plugin</artifactId>
104104
<configuration>
105105
<release>25</release>
106+
<!-- Benchmarks compile against Apache Arrow; its bytecode carries
107+
@org.immutables.value.Generated without the annotation jar, tripping
108+
javac's classfile lint on a dependency we don't own. Drop only that
109+
category; the parent's -Werror keeps every other lint strict. -->
110+
<compilerArgs combine.self="override">
111+
<arg>-Xlint:all,-classfile</arg>
112+
</compilerArgs>
106113
<annotationProcessorPaths>
107114
<path>
108115
<groupId>org.openjdk.jmh</groupId>

pom.xml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -297,11 +297,7 @@
297297
<showWarnings>true</showWarnings>
298298
<failOnWarning>true</failOnWarning>
299299
<compilerArgs>
300-
<!-- All lint categories except classfile: that one only flags missing
301-
annotation class files inside third-party dependencies (e.g.
302-
org.immutables.value.Generated pulled in transitively), which we
303-
cannot fix and which says nothing about our own sources. -->
304-
<arg>-Xlint:all,-classfile</arg>
300+
<arg>-Xlint:all</arg>
305301
</compilerArgs>
306302
</configuration>
307303
</plugin>

0 commit comments

Comments
 (0)