GitHub - grpc/grpc-java-api-checker
An Error Prone plugin that checks for usages of grpc-java APIs that are annotated with @ExperimentalApi or @Internal.
NOTE: grpc-java-api-checker works with grpc-java version 1.10.0 or greater.
The error examples:
src/main/java/com/example/App.java:10: error: [GrpcInternal] @Internal should not be used in application code
System.out.println(InternalStatus.MESSAGE_KEY);
^
(see https://github.com/grpc/grpc-java)
src/main/java/com/example/App.java:11: error: [GrpcExperimentalApi] @ExperimentalApi should not be used in application code
System.out.println(Grpc.TRANSPORT_ATTR_REMOTE_ADDR);
^
(see "https://github.com/grpc/grpc-java/issues/1710")
Usage
Using the grpc-java-api-checker requires configuring your project to build with the Error Prone Java compiler. You can see the Error Prone documents here.
Examples
Maven
The example is here
Gradle
The example is here
cd examples/
./gradlew compileJavaBazel
The example is here
cd examples/
bazel build //...Build and Test
# Compile mvn compile # Test mvn test # Build mvn build # Publish to Local mvn install