aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/java
diff options
context:
space:
mode:
authormaxim-yurchuk <maxim-yurchuk@yandex-team.com>2024-10-09 12:29:46 +0300
committermaxim-yurchuk <maxim-yurchuk@yandex-team.com>2024-10-09 13:14:22 +0300
commit9731d8a4bb7ee2cc8554eaf133bb85498a4c7d80 (patch)
treea8fb3181d5947c0d78cf402aa56e686130179049 /contrib/java
parenta44b779cd359f06c3ebbef4ec98c6b38609d9d85 (diff)
downloadydb-9731d8a4bb7ee2cc8554eaf133bb85498a4c7d80.tar.gz
publishFullContrib: true for ydb
<HIDDEN_URL> commit_hash:c82a80ac4594723cebf2c7387dec9c60217f603e
Diffstat (limited to 'contrib/java')
-rw-r--r--contrib/java/com/google/api/grpc/proto-google-common-protos/2.9.0/pom.xml59
-rw-r--r--contrib/java/com/google/code/findbugs/jsr305/3.0.2/pom.xml135
-rw-r--r--contrib/java/com/google/errorprone/error_prone_annotations/2.11.0/pom.xml69
-rw-r--r--contrib/java/com/google/errorprone/error_prone_annotations/2.14.0/pom.xml69
-rw-r--r--contrib/java/com/google/guava/failureaccess/1.0.1/pom.xml68
-rw-r--r--contrib/java/com/google/guava/failureaccess/1.0.1/ya.dependency_management.inc1
-rw-r--r--contrib/java/com/google/guava/guava/31.1-android/pom.xml253
-rw-r--r--contrib/java/com/google/guava/guava/31.1-android/ya.dependency_management.inc1
-rw-r--r--contrib/java/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/pom.xml56
-rw-r--r--contrib/java/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/ya.dependency_management.inc1
-rw-r--r--contrib/java/com/google/j2objc/j2objc-annotations/1.3/pom.xml87
-rw-r--r--contrib/java/com/google/protobuf/protobuf-java/3.21.1/pom.xml158
-rw-r--r--contrib/java/com/google/protobuf/protobuf-java/3.21.1/ya.dependency_management.inc1
-rw-r--r--contrib/java/com/google/protobuf/protobuf-java/3.21.7/pom.xml158
-rw-r--r--contrib/java/com/google/protobuf/protobuf-java/3.21.7/ya.dependency_management.inc1
-rw-r--r--contrib/java/com/google/protobuf/protobuf-java/3.25.3/pom.xml41
-rw-r--r--contrib/java/com/google/protobuf/protobuf-java/3.25.3/ya.dependency_management.inc1
-rw-r--r--contrib/java/com/google/protobuf/protobuf-javalite/3.21.7/pom.xml346
-rw-r--r--contrib/java/com/google/protobuf/protobuf-javalite/3.21.7/ya.dependency_management.inc1
-rw-r--r--contrib/java/io/grpc/grpc-api/1.51.0/pom.xml57
-rw-r--r--contrib/java/io/grpc/grpc-context/1.51.0/pom.xml31
-rw-r--r--contrib/java/io/grpc/grpc-protobuf-lite/1.51.0/pom.xml58
-rw-r--r--contrib/java/io/grpc/grpc-protobuf/1.51.0/pom.xml82
-rw-r--r--contrib/java/io/grpc/grpc-stub/1.51.0/pom.xml52
-rw-r--r--contrib/java/javax/annotation/javax.annotation-api/1.3.1/pom.xml319
-rw-r--r--contrib/java/org/checkerframework/checker-qual/3.12.0/pom.xml47
26 files changed, 2152 insertions, 0 deletions
diff --git a/contrib/java/com/google/api/grpc/proto-google-common-protos/2.9.0/pom.xml b/contrib/java/com/google/api/grpc/proto-google-common-protos/2.9.0/pom.xml
new file mode 100644
index 0000000000..72e82b5cbd
--- /dev/null
+++ b/contrib/java/com/google/api/grpc/proto-google-common-protos/2.9.0/pom.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>com.google.api.grpc</groupId>
+ <artifactId>proto-google-common-protos</artifactId>
+ <version>2.9.0</version>
+ <name>proto-google-common-protos</name>
+ <description>PROTO library for proto-google-common-protos</description>
+ <url>https://github.com/googleapis/java-iam/proto-google-common-protos</url>
+ <organization>
+ <name>Google LLC</name>
+ </organization>
+ <licenses>
+ <license>
+ <name>Apache-2.0</name>
+ <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+ <developers>
+ <developer>
+ <id>chingor</id>
+ <name>Jeff Ching</name>
+ <email>chingor@google.com</email>
+ <organization>Google</organization>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ </developer>
+ </developers>
+ <scm>
+ <connection>scm:git@github.com:googleapis/java-common-protos.git/proto-google-common-protos</connection>
+ <developerConnection>scm:git@github.com:googleapis/java-common-protos.git/proto-google-common-protos</developerConnection>
+ <url>https://github.com/googleapis/java-common-protos/proto-google-common-protos</url>
+ </scm>
+ <issueManagement>
+ <system>GitHub Issues</system>
+ <url>https://github.com/googleapis/java-common-protos/issues</url>
+ </issueManagement>
+ <distributionManagement>
+ <repository>
+ <id>sonatype-nexus-staging</id>
+ <url>https://google.google.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
+ </repository>
+ <snapshotRepository>
+ <id>sonatype-nexus-snapshots</id>
+ <url>https://google.google.oss.sonatype.org/content/repositories/snapshots</url>
+ </snapshotRepository>
+ </distributionManagement>
+ <dependencies>
+ <dependency>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-java</artifactId>
+ <version>3.21.1</version>
+ <scope>compile</scope>
+ <optional>false</optional>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/contrib/java/com/google/code/findbugs/jsr305/3.0.2/pom.xml b/contrib/java/com/google/code/findbugs/jsr305/3.0.2/pom.xml
new file mode 100644
index 0000000000..3a6e2c6cc7
--- /dev/null
+++ b/contrib/java/com/google/code/findbugs/jsr305/3.0.2/pom.xml
@@ -0,0 +1,135 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.sonatype.oss</groupId>
+ <artifactId>oss-parent</artifactId>
+ <version>7</version>
+ <relativePath />
+ </parent>
+
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ <version>3.0.2</version>
+ <packaging>jar</packaging>
+
+ <url>http://findbugs.sourceforge.net/</url>
+ <name>FindBugs-jsr305</name>
+ <description>JSR305 Annotations for Findbugs</description>
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ <distribution>repo</distribution>
+ </license>
+ </licenses>
+
+ <prerequisites>
+ <maven>3.0</maven>
+ </prerequisites>
+
+ <scm>
+ <connection>scm:git:https://code.google.com/p/jsr-305/</connection>
+ <developerConnection>scm:git:https://code.google.com/p/jsr-305/</developerConnection>
+ <url>https://code.google.com/p/jsr-305/</url>
+ </scm>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.9.1</version>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <configuration>
+ <quiet>true</quiet>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.0</version>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <version>2.4</version>
+ <executions>
+ <execution>
+ <id>attach-sources</id>
+ <goals>
+ <goal>jar-no-fork</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>2.4.0</version>
+ <extensions>true</extensions>
+ <executions>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <instructions>
+ <Bundle-SymbolicName>org.jsr-305</Bundle-SymbolicName>
+ <Bundle-Name>${project.name}</Bundle-Name>
+ <Export-Package>javax.annotation;javax.annotation.concurrent;javax.annotation.meta</Export-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.4</version>
+ <configuration>
+ <archive>
+ <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.sonatype.plugins</groupId>
+ <artifactId>nexus-staging-maven-plugin</artifactId>
+ <version>1.6.3</version>
+ <extensions>true</extensions>
+ <configuration>
+ <serverId>ossrh</serverId>
+ <nexusUrl>https://oss.sonatype.org/</nexusUrl>
+ <autoReleaseAfterClose>true</autoReleaseAfterClose>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-gpg-plugin</artifactId>
+ <version>1.5</version>
+ <executions>
+ <execution>
+ <id>sign-artifacts</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/contrib/java/com/google/errorprone/error_prone_annotations/2.11.0/pom.xml b/contrib/java/com/google/errorprone/error_prone_annotations/2.11.0/pom.xml
new file mode 100644
index 0000000000..a453c8595f
--- /dev/null
+++ b/contrib/java/com/google/errorprone/error_prone_annotations/2.11.0/pom.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2015 The Error Prone Authors.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_parent</artifactId>
+ <version>2.11.0</version>
+ </parent>
+
+ <name>error-prone annotations</name>
+ <artifactId>error_prone_annotations</artifactId>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <licenses>
+ <license>
+ <name>Apache 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.7</source>
+ <target>1.7</target>
+ <compilerArgs combine.self="override" />
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifestEntries>
+ <Automatic-Module-Name>com.google.errorprone.annotations</Automatic-Module-Name>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/contrib/java/com/google/errorprone/error_prone_annotations/2.14.0/pom.xml b/contrib/java/com/google/errorprone/error_prone_annotations/2.14.0/pom.xml
new file mode 100644
index 0000000000..ff9d969230
--- /dev/null
+++ b/contrib/java/com/google/errorprone/error_prone_annotations/2.14.0/pom.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2015 The Error Prone Authors.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_parent</artifactId>
+ <version>2.14.0</version>
+ </parent>
+
+ <name>error-prone annotations</name>
+ <artifactId>error_prone_annotations</artifactId>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <licenses>
+ <license>
+ <name>Apache 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.7</source>
+ <target>1.7</target>
+ <compilerArgs combine.self="override" />
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifestEntries>
+ <Automatic-Module-Name>com.google.errorprone.annotations</Automatic-Module-Name>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/contrib/java/com/google/guava/failureaccess/1.0.1/pom.xml b/contrib/java/com/google/guava/failureaccess/1.0.1/pom.xml
new file mode 100644
index 0000000000..6cce78255d
--- /dev/null
+++ b/contrib/java/com/google/guava/failureaccess/1.0.1/pom.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava-parent</artifactId>
+ <version>26.0-android</version>
+ </parent>
+ <artifactId>failureaccess</artifactId>
+ <version>1.0.1</version>
+ <packaging>bundle</packaging>
+ <name>Guava InternalFutureFailureAccess and InternalFutures</name>
+ <description>
+ Contains
+ com.google.common.util.concurrent.internal.InternalFutureFailureAccess and
+ InternalFutures. Most users will never need to use this artifact. Its
+ classes is conceptually a part of Guava, but they're in this separate
+ artifact so that Android libraries can use them without pulling in all of
+ Guava (just as they can use ListenableFuture by depending on the
+ listenablefuture artifact).
+ </description>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-source-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>animal-sniffer-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <extensions>true</extensions>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>2.5.0</version>
+ <executions>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <instructions>
+ <Export-Package>com.google.common.util.concurrent.internal</Export-Package>
+ <Bundle-DocURL>https://github.com/google/guava/</Bundle-DocURL>
+ </instructions>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>attach-docs</id>
+ </execution>
+ <execution>
+ <id>generate-javadoc-site-report</id>
+ <phase>site</phase>
+ <goals><goal>javadoc</goal></goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/contrib/java/com/google/guava/failureaccess/1.0.1/ya.dependency_management.inc b/contrib/java/com/google/guava/failureaccess/1.0.1/ya.dependency_management.inc
new file mode 100644
index 0000000000..f42a3050ff
--- /dev/null
+++ b/contrib/java/com/google/guava/failureaccess/1.0.1/ya.dependency_management.inc
@@ -0,0 +1 @@
+INCLUDE(${ARCADIA_ROOT}/contrib/java/com/google/guava/guava-parent/26.0-android/ya.dependency_management.inc)
diff --git a/contrib/java/com/google/guava/guava/31.1-android/pom.xml b/contrib/java/com/google/guava/guava/31.1-android/pom.xml
new file mode 100644
index 0000000000..39611d4c9e
--- /dev/null
+++ b/contrib/java/com/google/guava/guava/31.1-android/pom.xml
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava-parent</artifactId>
+ <version>31.1-android</version>
+ </parent>
+ <artifactId>guava</artifactId>
+ <packaging>bundle</packaging>
+ <name>Guava: Google Core Libraries for Java</name>
+ <url>https://github.com/google/guava</url>
+ <description>
+ Guava is a suite of core and expanded libraries that include
+ utility classes, Google's collections, I/O classes, and
+ much more.
+ </description>
+ <dependencies>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>failureaccess</artifactId>
+ <version>1.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>listenablefuture</artifactId>
+ <version>9999.0-empty-to-avoid-conflict-with-guava</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.checkerframework</groupId>
+ <artifactId>checker-qual</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_annotations</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.google.j2objc</groupId>
+ <artifactId>j2objc-annotations</artifactId>
+ </dependency>
+ <!-- TODO(cpovirk): does this comment belong on the <dependency> in <profiles>? -->
+ <!-- TODO(cpovirk): want this only for dependency plugin but seems not to work there? Maven runs without failure, but the resulting Javadoc is missing the hoped-for inherited text -->
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifestEntries>
+ <Automatic-Module-Name>com.google.common</Automatic-Module-Name>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <extensions>true</extensions>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>2.5.0</version>
+ <executions>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <instructions>
+ <Export-Package>
+ !com.google.common.base.internal,
+ !com.google.common.util.concurrent.internal,
+ com.google.common.*
+ </Export-Package>
+ <Import-Package>
+ com.google.common.util.concurrent.internal,
+ javax.annotation;resolution:=optional,
+ javax.crypto.*;resolution:=optional,
+ sun.misc.*;resolution:=optional
+ </Import-Package>
+ <Bundle-DocURL>https://github.com/google/guava/</Bundle-DocURL>
+ </instructions>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-source-plugin</artifactId>
+ </plugin>
+ <!-- TODO(cpovirk): include JDK sources when building testlib doc, too -->
+ <plugin>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>unpack-jdk-sources</id>
+ <phase>generate-sources</phase>
+ <goals><goal>unpack-dependencies</goal></goals>
+ <configuration>
+ <includeArtifactIds>srczip</includeArtifactIds>
+ <outputDirectory>${project.build.directory}/jdk-sources</outputDirectory>
+ <silent>false</silent>
+ <!-- Exclude module-info files (since we're using -source 8 to avoid other modules problems) and FileDescriptor (which uses a language feature not available in Java 8). -->
+ <excludes>**/module-info.java,**/java/io/FileDescriptor.java</excludes>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>animal-sniffer-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <!-- TODO(cpovirk): Move this to the parent after making jdk-sources available there. -->
+ <!-- TODO(cpovirk): can we use includeDependencySources and a local com.oracle.java:jdk-lib:noversion:sources instead of all this unzipping and manual sourcepath modification? -->
+ <!-- (We need JDK *sources*, not just -link, so that {@inheritDoc} works.) -->
+ <sourcepath>${project.build.sourceDirectory}:${project.build.directory}/jdk-sources</sourcepath>
+
+ <!-- Passing `-subpackages com.google.common` breaks things, so we explicitly exclude everything else instead. -->
+ <!-- excludePackageNames requires specification of packages separately from "all subpackages".
+ https://issues.apache.org/jira/browse/MJAVADOC-584 -->
+ <excludePackageNames>
+ com.azul.tooling.in,com.google.common.base.internal,com.google.common.base.internal.*,com.google.thirdparty.publicsuffix,com.google.thirdparty.publicsuffix.*,com.oracle.*,com.sun.*,java.*,javax.*,jdk,jdk.*,org.*,sun.*
+ </excludePackageNames>
+ <!-- Ignore some tags that are found in Java 11 sources but not recognized... under -source 8, I think it was? I can no longer reproduce the failure. -->
+ <tags>
+ <tag>
+ <name>apiNote</name>
+ <placement>X</placement>
+ </tag>
+ <tag>
+ <name>implNote</name>
+ <placement>X</placement>
+ </tag>
+ <tag>
+ <name>implSpec</name>
+ <placement>X</placement>
+ </tag>
+ <tag>
+ <name>jls</name>
+ <placement>X</placement>
+ </tag>
+ <tag>
+ <name>revised</name>
+ <placement>X</placement>
+ </tag>
+ <tag>
+ <name>spec</name>
+ <placement>X</placement>
+ </tag>
+ </tags>
+
+ <!-- TODO(cpovirk): Move this to the parent after making the package-list files available there. -->
+ <!-- We add the link ourselves, both so that we can choose Java 9 over the version that -source suggests and so that we can solve the JSR305 problem described below. -->
+ <detectJavaApiLink>false</detectJavaApiLink>
+ <offlineLinks>
+ <!-- We need local copies of some of these for 2 reasons: a User-Agent problem (https://stackoverflow.com/a/47891403/28465) and an SSL problem (https://issues.apache.org/jira/browse/MJAVADOC-507). If we choose to work around the User-Agent problem, we can go back to <links>, sidestepping the SSL problem. -->
+ <!-- Even after we stop using JSR305 annotations in our own code, we'll want this link so that NullPointerTester's docs can link to @CheckForNull and friends... at least once we start using this config for guava-testlib. -->
+ <offlineLink>
+ <url>https://static.javadoc.io/com.google.code.findbugs/jsr305/3.0.1/</url>
+ <location>${project.basedir}/javadoc-link/jsr305</location>
+ </offlineLink>
+ <offlineLink>
+ <url>https://static.javadoc.io/com.google.j2objc/j2objc-annotations/1.1/</url>
+ <location>${project.basedir}/javadoc-link/j2objc-annotations</location>
+ </offlineLink>
+ <!-- The JDK doc must be listed after JSR305 (and as an <offlineLink>, not a <link>) so that JSR305 "claims" javax.annotation. -->
+ <offlineLink>
+ <url>https://docs.oracle.com/javase/9/docs/api/</url>
+ <location>https://docs.oracle.com/javase/9/docs/api/</location>
+ </offlineLink>
+ <!-- The Checker Framework likewise would claim javax.annotations, despite providing only a subset of the JSR305 annotations, so it must likewise come after JSR305. -->
+ <offlineLink>
+ <url>https://checkerframework.org/api/</url>
+ <location>${project.basedir}/javadoc-link/checker-framework</location>
+ </offlineLink>
+ </offlineLinks>
+ <links>
+ <link>https://errorprone.info/api/latest/</link>
+ </links>
+ </configuration>
+ <executions>
+ <execution>
+ <id>attach-docs</id>
+ </execution>
+ <execution>
+ <id>generate-javadoc-site-report</id>
+ <phase>site</phase>
+ <goals><goal>javadoc</goal></goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ <profiles>
+ <profile>
+ <id>srczip-parent</id>
+ <activation>
+ <file>
+ <exists>${java.home}/../src.zip</exists>
+ </file>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>jdk</groupId>
+ <artifactId>srczip</artifactId>
+ <version>999</version>
+ <scope>system</scope>
+ <systemPath>${java.home}/../src.zip</systemPath>
+ <optional>true</optional>
+ </dependency>
+ </dependencies>
+ </profile>
+ <profile>
+ <id>srczip-lib</id>
+ <activation>
+ <file>
+ <exists>${java.home}/lib/src.zip</exists>
+ </file>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>jdk</groupId>
+ <artifactId>srczip</artifactId>
+ <version>999</version>
+ <scope>system</scope>
+ <systemPath>${java.home}/lib/src.zip</systemPath>
+ <optional>true</optional>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <!-- We need to point at the java.base subdirectory because Maven appears to assume that package foo.bar is located in foo/bar and not java.base/foo/bar when translating excludePackageNames into filenames to pass to javadoc. (Note that manually passing -exclude to javadoc appears to possibly not work at all for java.* types??) Also, referring only to java.base avoids a lot of other sources. -->
+ <sourcepath>${project.build.sourceDirectory}:${project.build.directory}/jdk-sources/java.base</sourcepath>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
diff --git a/contrib/java/com/google/guava/guava/31.1-android/ya.dependency_management.inc b/contrib/java/com/google/guava/guava/31.1-android/ya.dependency_management.inc
new file mode 100644
index 0000000000..9145a507c2
--- /dev/null
+++ b/contrib/java/com/google/guava/guava/31.1-android/ya.dependency_management.inc
@@ -0,0 +1 @@
+INCLUDE(${ARCADIA_ROOT}/contrib/java/com/google/guava/guava-parent/31.1-android/ya.dependency_management.inc)
diff --git a/contrib/java/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/pom.xml b/contrib/java/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/pom.xml
new file mode 100644
index 0000000000..ad3f23ec65
--- /dev/null
+++ b/contrib/java/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/pom.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava-parent</artifactId>
+ <version>26.0-android</version>
+ </parent>
+ <artifactId>listenablefuture</artifactId>
+ <version>9999.0-empty-to-avoid-conflict-with-guava</version>
+ <name>Guava ListenableFuture only</name>
+ <description>
+ An empty artifact that Guava depends on to signal that it is providing
+ ListenableFuture -- but is also available in a second "version" that
+ contains com.google.common.util.concurrent.ListenableFuture class, without
+ any other Guava classes. The idea is:
+
+ - If users want only ListenableFuture, they depend on listenablefuture-1.0.
+
+ - If users want all of Guava, they depend on guava, which, as of Guava
+ 27.0, depends on
+ listenablefuture-9999.0-empty-to-avoid-conflict-with-guava. The 9999.0-...
+ version number is enough for some build systems (notably, Gradle) to select
+ that empty artifact over the "real" listenablefuture-1.0 -- avoiding a
+ conflict with the copy of ListenableFuture in guava itself. If users are
+ using an older version of Guava or a build system other than Gradle, they
+ may see class conflicts. If so, they can solve them by manually excluding
+ the listenablefuture artifact or manually forcing their build systems to
+ use 9999.0-....
+ </description>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-source-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>animal-sniffer-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>attach-docs</id>
+ </execution>
+ <execution>
+ <id>generate-javadoc-site-report</id>
+ <phase>site</phase>
+ <goals><goal>javadoc</goal></goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/contrib/java/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/ya.dependency_management.inc b/contrib/java/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/ya.dependency_management.inc
new file mode 100644
index 0000000000..f42a3050ff
--- /dev/null
+++ b/contrib/java/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/ya.dependency_management.inc
@@ -0,0 +1 @@
+INCLUDE(${ARCADIA_ROOT}/contrib/java/com/google/guava/guava-parent/26.0-android/ya.dependency_management.inc)
diff --git a/contrib/java/com/google/j2objc/j2objc-annotations/1.3/pom.xml b/contrib/java/com/google/j2objc/j2objc-annotations/1.3/pom.xml
new file mode 100644
index 0000000000..d32414aa52
--- /dev/null
+++ b/contrib/java/com/google/j2objc/j2objc-annotations/1.3/pom.xml
@@ -0,0 +1,87 @@
+<!--
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ Maven project to build and deploy J2ObjC annotations.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.sonatype.oss</groupId>
+ <artifactId>oss-parent</artifactId>
+ <version>7</version>
+ </parent>
+
+ <groupId>com.google.j2objc</groupId>
+ <artifactId>j2objc-annotations</artifactId>
+ <packaging>jar</packaging>
+ <version>1.3</version>
+
+ <name>J2ObjC Annotations</name>
+ <description>
+ A set of annotations that provide additional information to the J2ObjC
+ translator to modify the result of translation.
+ </description>
+ <url>https://github.com/google/j2objc/</url>
+
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ <distribution>repo</distribution>
+ </license>
+ </licenses>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.10.3</version>
+ <executions>
+ <execution>
+ <id>generate-docs</id>
+ <phase>package</phase>
+ <goals><goal>jar</goal></goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <version>2.4</version>
+ <executions>
+ <execution>
+ <id>generate-sources</id>
+ <phase>package</phase>
+ <goals><goal>jar-no-fork</goal></goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-gpg-plugin</artifactId>
+ <version>1.6</version>
+ <executions>
+ <execution>
+ <id>sign-artifacts</id>
+ <phase>verify</phase>
+ <goals><goal>sign</goal></goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/contrib/java/com/google/protobuf/protobuf-java/3.21.1/pom.xml b/contrib/java/com/google/protobuf/protobuf-java/3.21.1/pom.xml
new file mode 100644
index 0000000000..e32d0aa352
--- /dev/null
+++ b/contrib/java/com/google/protobuf/protobuf-java/3.21.1/pom.xml
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-parent</artifactId>
+ <version>3.21.1</version>
+ </parent>
+
+ <artifactId>protobuf-java</artifactId>
+ <packaging>bundle</packaging>
+
+ <name>Protocol Buffers [Core]</name>
+ <description>
+ Core Protocol Buffers library. Protocol Buffers are a way of encoding structured data in an
+ efficient yet extensible format.
+ </description>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.truth</groupId>
+ <artifactId>truth</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <!-- Include core protos in the bundle as resources -->
+ <resources>
+ <resource>
+ <directory>${protobuf.source.dir}</directory>
+ <includes>
+ <include>google/protobuf/any.proto</include>
+ <include>google/protobuf/api.proto</include>
+ <include>google/protobuf/descriptor.proto</include>
+ <include>google/protobuf/duration.proto</include>
+ <include>google/protobuf/empty.proto</include>
+ <include>google/protobuf/field_mask.proto</include>
+ <include>google/protobuf/source_context.proto</include>
+ <include>google/protobuf/struct.proto</include>
+ <include>google/protobuf/timestamp.proto</include>
+ <include>google/protobuf/type.proto</include>
+ <include>google/protobuf/wrappers.proto</include>
+ <include>google/protobuf/compiler/plugin.proto</include>
+ </includes>
+ </resource>
+ </resources>
+ <testResources>
+ <testResource>
+ <directory>${protobuf.source.dir}</directory>
+ <includes>
+ <include>google/protobuf/testdata/golden_message_oneof_implemented</include>
+ <include>google/protobuf/testdata/golden_packed_fields_message</include>
+ </includes>
+ </testResource>
+ </testResources>
+
+ <plugins>
+ <!-- Use Antrun plugin to generate sources with protoc -->
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <!-- Generate core protos -->
+ <execution>
+ <id>generate-sources</id>
+ <phase>generate-sources</phase>
+ <configuration>
+ <target>
+ <ant antfile="generate-sources-build.xml"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+
+ <!-- Generate the test protos -->
+ <execution>
+ <id>generate-test-sources</id>
+ <phase>generate-test-sources</phase>
+ <configuration>
+ <target>
+ <ant antfile="generate-test-sources-build.xml"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!-- Add the generated sources to the build -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>add-generated-sources</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${generated.sources.dir}</source>
+ </sources>
+ </configuration>
+ </execution>
+ <execution>
+ <id>add-generated-test-sources</id>
+ <phase>generate-test-sources</phase>
+ <goals>
+ <goal>add-test-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${generated.testsources.dir}</source>
+ </sources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!-- OSGI bundle configuration -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Automatic-Module-Name>com.google.protobuf</Automatic-Module-Name> <!-- Java9+ Jigsaw module name -->
+ <Bundle-DocURL>https://developers.google.com/protocol-buffers/</Bundle-DocURL>
+ <Bundle-SymbolicName>com.google.protobuf</Bundle-SymbolicName>
+ <Export-Package>com.google.protobuf;version=${project.version}</Export-Package>
+ <Import-Package>sun.misc;resolution:=optional,*</Import-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/contrib/java/com/google/protobuf/protobuf-java/3.21.1/ya.dependency_management.inc b/contrib/java/com/google/protobuf/protobuf-java/3.21.1/ya.dependency_management.inc
new file mode 100644
index 0000000000..1eeeb1becd
--- /dev/null
+++ b/contrib/java/com/google/protobuf/protobuf-java/3.21.1/ya.dependency_management.inc
@@ -0,0 +1 @@
+INCLUDE(${ARCADIA_ROOT}/contrib/java/com/google/protobuf/protobuf-parent/3.21.1/ya.dependency_management.inc)
diff --git a/contrib/java/com/google/protobuf/protobuf-java/3.21.7/pom.xml b/contrib/java/com/google/protobuf/protobuf-java/3.21.7/pom.xml
new file mode 100644
index 0000000000..a6da8c850e
--- /dev/null
+++ b/contrib/java/com/google/protobuf/protobuf-java/3.21.7/pom.xml
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-parent</artifactId>
+ <version>3.21.7</version>
+ </parent>
+
+ <artifactId>protobuf-java</artifactId>
+ <packaging>bundle</packaging>
+
+ <name>Protocol Buffers [Core]</name>
+ <description>
+ Core Protocol Buffers library. Protocol Buffers are a way of encoding structured data in an
+ efficient yet extensible format.
+ </description>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.truth</groupId>
+ <artifactId>truth</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <!-- Include core protos in the bundle as resources -->
+ <resources>
+ <resource>
+ <directory>${protobuf.source.dir}</directory>
+ <includes>
+ <include>google/protobuf/any.proto</include>
+ <include>google/protobuf/api.proto</include>
+ <include>google/protobuf/descriptor.proto</include>
+ <include>google/protobuf/duration.proto</include>
+ <include>google/protobuf/empty.proto</include>
+ <include>google/protobuf/field_mask.proto</include>
+ <include>google/protobuf/source_context.proto</include>
+ <include>google/protobuf/struct.proto</include>
+ <include>google/protobuf/timestamp.proto</include>
+ <include>google/protobuf/type.proto</include>
+ <include>google/protobuf/wrappers.proto</include>
+ <include>google/protobuf/compiler/plugin.proto</include>
+ </includes>
+ </resource>
+ </resources>
+ <testResources>
+ <testResource>
+ <directory>${protobuf.source.dir}</directory>
+ <includes>
+ <include>google/protobuf/testdata/golden_message_oneof_implemented</include>
+ <include>google/protobuf/testdata/golden_packed_fields_message</include>
+ </includes>
+ </testResource>
+ </testResources>
+
+ <plugins>
+ <!-- Use Antrun plugin to generate sources with protoc -->
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <!-- Generate core protos -->
+ <execution>
+ <id>generate-sources</id>
+ <phase>generate-sources</phase>
+ <configuration>
+ <target>
+ <ant antfile="generate-sources-build.xml"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+
+ <!-- Generate the test protos -->
+ <execution>
+ <id>generate-test-sources</id>
+ <phase>generate-test-sources</phase>
+ <configuration>
+ <target>
+ <ant antfile="generate-test-sources-build.xml"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!-- Add the generated sources to the build -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>add-generated-sources</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${generated.sources.dir}</source>
+ </sources>
+ </configuration>
+ </execution>
+ <execution>
+ <id>add-generated-test-sources</id>
+ <phase>generate-test-sources</phase>
+ <goals>
+ <goal>add-test-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${generated.testsources.dir}</source>
+ </sources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!-- OSGI bundle configuration -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Automatic-Module-Name>com.google.protobuf</Automatic-Module-Name> <!-- Java9+ Jigsaw module name -->
+ <Bundle-DocURL>https://developers.google.com/protocol-buffers/</Bundle-DocURL>
+ <Bundle-SymbolicName>com.google.protobuf</Bundle-SymbolicName>
+ <Export-Package>com.google.protobuf;version=${project.version}</Export-Package>
+ <Import-Package>sun.misc;resolution:=optional,*</Import-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/contrib/java/com/google/protobuf/protobuf-java/3.21.7/ya.dependency_management.inc b/contrib/java/com/google/protobuf/protobuf-java/3.21.7/ya.dependency_management.inc
new file mode 100644
index 0000000000..96ff04a676
--- /dev/null
+++ b/contrib/java/com/google/protobuf/protobuf-java/3.21.7/ya.dependency_management.inc
@@ -0,0 +1 @@
+INCLUDE(${ARCADIA_ROOT}/contrib/java/com/google/protobuf/protobuf-parent/3.21.7/ya.dependency_management.inc)
diff --git a/contrib/java/com/google/protobuf/protobuf-java/3.25.3/pom.xml b/contrib/java/com/google/protobuf/protobuf-java/3.25.3/pom.xml
new file mode 100644
index 0000000000..7622044208
--- /dev/null
+++ b/contrib/java/com/google/protobuf/protobuf-java/3.25.3/pom.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-parent</artifactId>
+ <version>3.25.3</version>
+ </parent>
+
+ <artifactId>protobuf-java</artifactId>
+ <packaging>jar</packaging>
+
+ <name>Protocol Buffers [Core]</name>
+ <description>
+ Core Protocol Buffers library. Protocol Buffers are a way of encoding structured data in an
+ efficient yet extensible format.
+ </description>
+ <dependencies>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+ <!-- OSGI bundle configuration -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Automatic-Module-Name>com.google.protobuf</Automatic-Module-Name> <!-- Java9+ Jigsaw module name -->
+ <Bundle-DocURL>https://developers.google.com/protocol-buffers/</Bundle-DocURL>
+ <Bundle-SymbolicName>com.google.protobuf</Bundle-SymbolicName>
+ <Export-Package>com.google.protobuf;version=${project.version}</Export-Package>
+ <Import-Package>sun.misc;resolution:=optional,*</Import-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/contrib/java/com/google/protobuf/protobuf-java/3.25.3/ya.dependency_management.inc b/contrib/java/com/google/protobuf/protobuf-java/3.25.3/ya.dependency_management.inc
new file mode 100644
index 0000000000..ad5f49c2f0
--- /dev/null
+++ b/contrib/java/com/google/protobuf/protobuf-java/3.25.3/ya.dependency_management.inc
@@ -0,0 +1 @@
+INCLUDE(${ARCADIA_ROOT}/contrib/java/com/google/protobuf/protobuf-parent/3.25.3/ya.dependency_management.inc)
diff --git a/contrib/java/com/google/protobuf/protobuf-javalite/3.21.7/pom.xml b/contrib/java/com/google/protobuf/protobuf-javalite/3.21.7/pom.xml
new file mode 100644
index 0000000000..a78ff979b3
--- /dev/null
+++ b/contrib/java/com/google/protobuf/protobuf-javalite/3.21.7/pom.xml
@@ -0,0 +1,346 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-parent</artifactId>
+ <version>3.21.7</version>
+ </parent>
+
+ <artifactId>protobuf-javalite</artifactId>
+ <packaging>bundle</packaging>
+
+ <name>Protocol Buffers [Lite]</name>
+ <description>
+ Lite version of Protocol Buffers library. This version is optimized for code size, but does
+ not guarantee API/ABI stability.
+ </description>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.truth</groupId>
+ <artifactId>truth</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <!-- Include core protos in the bundle as resources -->
+ <resources>
+ <resource>
+ <directory>${protobuf.source.dir}</directory>
+ <includes>
+ <include>google/protobuf/any.proto</include>
+ <include>google/protobuf/api.proto</include>
+ <include>google/protobuf/duration.proto</include>
+ <include>google/protobuf/empty.proto</include>
+ <include>google/protobuf/field_mask.proto</include>
+ <include>google/protobuf/source_context.proto</include>
+ <include>google/protobuf/struct.proto</include>
+ <include>google/protobuf/timestamp.proto</include>
+ <include>google/protobuf/type.proto</include>
+ <include>google/protobuf/wrappers.proto</include>
+ </includes>
+ </resource>
+ </resources>
+ <testResources>
+ <testResource>
+ <directory>${protobuf.source.dir}</directory>
+ <includes>
+ <include>google/protobuf/testdata/golden_message_oneof_implemented</include>
+ <include>google/protobuf/testdata/golden_packed_fields_message</include>
+ </includes>
+ </testResource>
+ </testResources>
+
+ <plugins>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>3.1.0</version>
+ <executions>
+ <execution>
+ <id>copy-source-files</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${generated.sources.dir}/com/google/protobuf</outputDirectory>
+ <resources>
+ <resource>
+ <directory>${basedir}/../core/src/main/java/com/google/protobuf</directory>
+ <includes>
+ <!-- Keep in sync with //java/core:BUILD -->
+ <include>AbstractMessageLite.java</include>
+ <include>AbstractParser.java</include>
+ <include>AbstractProtobufList.java</include>
+ <include>AllocatedBuffer.java</include>
+ <include>Android.java</include>
+ <include>ArrayDecoders.java</include>
+ <include>BinaryReader.java</include>
+ <include>BinaryWriter.java</include>
+ <include>BooleanArrayList.java</include>
+ <include>BufferAllocator.java</include>
+ <include>ByteBufferWriter.java</include>
+ <include>ByteOutput.java</include>
+ <include>ByteString.java</include>
+ <include>CanIgnoreReturnValue.java</include>
+ <include>CheckReturnValue.java</include>
+ <include>CodedInputStream.java</include>
+ <include>CodedInputStreamReader.java</include>
+ <include>CodedOutputStream.java</include>
+ <include>CodedOutputStreamWriter.java</include>
+ <include>CompileTimeConstant.java</include>
+ <include>DoubleArrayList.java</include>
+ <include>ExperimentalApi.java</include>
+ <include>ExtensionLite.java</include>
+ <include>ExtensionRegistryFactory.java</include>
+ <include>ExtensionRegistryLite.java</include>
+ <include>ExtensionSchema.java</include>
+ <include>ExtensionSchemaLite.java</include>
+ <include>ExtensionSchemas.java</include>
+ <include>FieldInfo.java</include>
+ <include>FieldSet.java</include>
+ <include>FieldType.java</include>
+ <include>FloatArrayList.java</include>
+ <include>GeneratedMessageInfoFactory.java</include>
+ <include>GeneratedMessageLite.java</include>
+ <include>InlineMe.java</include>
+ <include>IntArrayList.java</include>
+ <include>Internal.java</include>
+ <include>InvalidProtocolBufferException.java</include>
+ <include>IterableByteBufferInputStream.java</include>
+ <include>JavaType.java</include>
+ <include>LazyField.java</include>
+ <include>LazyFieldLite.java</include>
+ <include>LazyStringArrayList.java</include>
+ <include>LazyStringList.java</include>
+ <include>ListFieldSchema.java</include>
+ <include>LongArrayList.java</include>
+ <include>ManifestSchemaFactory.java</include>
+ <include>MapEntryLite.java</include>
+ <include>MapFieldLite.java</include>
+ <include>MapFieldSchema.java</include>
+ <include>MapFieldSchemaLite.java</include>
+ <include>MapFieldSchemas.java</include>
+ <include>MessageInfo.java</include>
+ <include>MessageInfoFactory.java</include>
+ <include>MessageLite.java</include>
+ <include>MessageLiteOrBuilder.java</include>
+ <include>MessageLiteToString.java</include>
+ <include>MessageSchema.java</include>
+ <include>MessageSetSchema.java</include>
+ <include>MutabilityOracle.java</include>
+ <include>NewInstanceSchema.java</include>
+ <include>NewInstanceSchemaLite.java</include>
+ <include>NewInstanceSchemas.java</include>
+ <include>NioByteString.java</include>
+ <include>OneofInfo.java</include>
+ <include>Parser.java</include>
+ <include>PrimitiveNonBoxingCollection.java</include>
+ <include>ProtoSyntax.java</include>
+ <include>Protobuf.java</include>
+ <include>ProtobufArrayList.java</include>
+ <include>ProtobufLists.java</include>
+ <include>ProtocolStringList.java</include>
+ <include>RawMessageInfo.java</include>
+ <include>Reader.java</include>
+ <include>RopeByteString.java</include>
+ <include>Schema.java</include>
+ <include>SchemaFactory.java</include>
+ <include>SchemaUtil.java</include>
+ <include>SmallSortedMap.java</include>
+ <include>StructuralMessageInfo.java</include>
+ <include>TextFormatEscaper.java</include>
+ <include>UninitializedMessageException.java</include>
+ <include>UnknownFieldSchema.java</include>
+ <include>UnknownFieldSetLite.java</include>
+ <include>UnknownFieldSetLiteSchema.java</include>
+ <include>UnmodifiableLazyStringList.java</include>
+ <include>UnsafeByteOperations.java</include>
+ <include>UnsafeUtil.java</include>
+ <include>Utf8.java</include>
+ <include>WireFormat.java</include>
+ <include>Writer.java</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ <execution>
+ <id>copy-test-source-files</id>
+ <phase>generate-test-sources</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${generated.testsources.dir}/com/google/protobuf</outputDirectory>
+ <resources>
+ <resource>
+ <directory>${basedir}/../core/src/test/java/com/google/protobuf</directory>
+ <!-- For sources, we want to be explicit about what we add so we don't accidentally
+ increase the size of the lite runtime library. For tests, we want to be defensive
+ and exclude only the full runtime exclusive tests so we don't accidentally miss
+ any test. -->
+ <excludes>
+ <!-- Keep in sync with //java/core:lite_tests BUILD rule. -->
+ <exclude>AbstractMessageTest.java</exclude>
+ <exclude>AbstractProto2SchemaTest.java</exclude>
+ <exclude>AnyTest.java</exclude>
+ <exclude>CodedInputStreamTest.java</exclude>
+ <exclude>DeprecatedFieldTest.java</exclude>
+ <exclude>DescriptorsTest.java</exclude>
+ <exclude>DiscardUnknownFieldsTest.java</exclude>
+ <exclude>DynamicMessageTest.java</exclude>
+ <exclude>ExtensionRegistryFactoryTest.java</exclude>
+ <exclude>FieldPresenceTest.java</exclude>
+ <exclude>ForceFieldBuildersPreRun.java</exclude>
+ <exclude>GeneratedMessageTest.java</exclude>
+ <exclude>LazyFieldTest.java</exclude>
+ <exclude>LazyStringEndToEndTest.java</exclude>
+ <exclude>MapForProto2Test.java</exclude>
+ <exclude>MapTest.java</exclude>
+ <exclude>MessageTest.java</exclude>
+ <exclude>NestedBuildersTest.java</exclude>
+ <exclude>PackedFieldTest.java</exclude>
+ <exclude>ParserTest.java</exclude>
+ <exclude>ParseExceptionsTest.java</exclude>
+ <exclude>Proto2ExtensionLookupSchemaTest.java</exclude>
+ <exclude>Proto2SchemaTest.java</exclude>
+ <exclude>Proto2UnknownEnumValueTest.java</exclude>
+ <exclude>RepeatedFieldBuilderV3Test.java</exclude>
+ <exclude>ServiceTest.java</exclude>
+ <exclude>SingleFieldBuilderV3Test.java</exclude>
+ <exclude>TestBadIdentifiers.java</exclude>
+ <exclude>TextFormatParseInfoTreeTest.java</exclude>
+ <exclude>TextFormatParseLocationTest.java</exclude>
+ <exclude>TextFormatTest.java</exclude>
+ <exclude>TestUtil.java</exclude>
+ <exclude>TypeRegistryTest.java</exclude>
+ <exclude>UnknownEnumValueTest.java</exclude>
+ <exclude>UnknownFieldSetLiteTest.java</exclude>
+ <exclude>UnknownFieldSetPerformanceTest.java</exclude>
+ <exclude>UnknownFieldSetTest.java</exclude>
+ <exclude>WellKnownTypesTest.java</exclude>
+ <exclude>WireFormatTest.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!-- Use Antrun plugin to generate sources with protoc -->
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <!-- Generate core protos -->
+ <execution>
+ <id>generate-sources</id>
+ <phase>generate-sources</phase>
+ <configuration>
+ <target>
+ <ant antfile="generate-sources-build.xml"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+
+ <!-- Generate the test protos -->
+ <execution>
+ <id>generate-test-sources</id>
+ <phase>generate-test-sources</phase>
+ <configuration>
+ <target>
+ <ant antfile="generate-test-sources-build.xml"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+
+ <execution>
+ <id>process-lite-sources</id>
+ <phase>generate-test-sources</phase>
+ <configuration>
+ <target>
+ <ant antfile="process-lite-sources-build.xml"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>add-generated-sources</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${generated.sources.dir}</source>
+ </sources>
+ </configuration>
+ </execution>
+
+ <execution>
+ <id>add-generated-test-sources</id>
+ <phase>generate-test-sources</phase>
+ <goals>
+ <goal>add-test-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${generated.testsources.dir}</source>
+ </sources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!-- OSGI bundle configuration -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Automatic-Module-Name>com.google.protobuf</Automatic-Module-Name> <!-- Java9+ Jigsaw module name -->
+ <Bundle-DocURL>https://developers.google.com/protocol-buffers/</Bundle-DocURL>
+ <Bundle-SymbolicName>com.google.protobuf</Bundle-SymbolicName>
+ <Export-Package>com.google.protobuf;version=${project.version}</Export-Package>
+ <Import-Package>sun.misc;resolution:=optional,*</Import-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/contrib/java/com/google/protobuf/protobuf-javalite/3.21.7/ya.dependency_management.inc b/contrib/java/com/google/protobuf/protobuf-javalite/3.21.7/ya.dependency_management.inc
new file mode 100644
index 0000000000..96ff04a676
--- /dev/null
+++ b/contrib/java/com/google/protobuf/protobuf-javalite/3.21.7/ya.dependency_management.inc
@@ -0,0 +1 @@
+INCLUDE(${ARCADIA_ROOT}/contrib/java/com/google/protobuf/protobuf-parent/3.21.7/ya.dependency_management.inc)
diff --git a/contrib/java/io/grpc/grpc-api/1.51.0/pom.xml b/contrib/java/io/grpc/grpc-api/1.51.0/pom.xml
new file mode 100644
index 0000000000..426651f504
--- /dev/null
+++ b/contrib/java/io/grpc/grpc-api/1.51.0/pom.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-api</artifactId>
+ <version>1.51.0</version>
+ <name>io.grpc:grpc-api</name>
+ <description>gRPC: API</description>
+ <url>https://github.com/grpc/grpc-java</url>
+ <licenses>
+ <license>
+ <name>Apache 2.0</name>
+ <url>https://opensource.org/licenses/Apache-2.0</url>
+ </license>
+ </licenses>
+ <developers>
+ <developer>
+ <id>grpc.io</id>
+ <name>gRPC Contributors</name>
+ <email>grpc-io@googlegroups.com</email>
+ <url>https://grpc.io/</url>
+ <organization>gRPC Authors</organization>
+ <organizationUrl>https://www.google.com</organizationUrl>
+ </developer>
+ </developers>
+ <scm>
+ <connection>scm:git:https://github.com/grpc/grpc-java.git</connection>
+ <developerConnection>scm:git:git@github.com:grpc/grpc-java.git</developerConnection>
+ <url>https://github.com/grpc/grpc-java</url>
+ </scm>
+ <dependencies>
+ <dependency>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-context</artifactId>
+ <version>1.51.0</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ <version>3.0.2</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_annotations</artifactId>
+ <version>2.14.0</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>31.1-android</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/contrib/java/io/grpc/grpc-context/1.51.0/pom.xml b/contrib/java/io/grpc/grpc-context/1.51.0/pom.xml
new file mode 100644
index 0000000000..5a1d7b3f07
--- /dev/null
+++ b/contrib/java/io/grpc/grpc-context/1.51.0/pom.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-context</artifactId>
+ <version>1.51.0</version>
+ <name>io.grpc:grpc-context</name>
+ <description>gRPC: Context</description>
+ <url>https://github.com/grpc/grpc-java</url>
+ <licenses>
+ <license>
+ <name>Apache 2.0</name>
+ <url>https://opensource.org/licenses/Apache-2.0</url>
+ </license>
+ </licenses>
+ <developers>
+ <developer>
+ <id>grpc.io</id>
+ <name>gRPC Contributors</name>
+ <email>grpc-io@googlegroups.com</email>
+ <url>https://grpc.io/</url>
+ <organization>gRPC Authors</organization>
+ <organizationUrl>https://www.google.com</organizationUrl>
+ </developer>
+ </developers>
+ <scm>
+ <connection>scm:git:https://github.com/grpc/grpc-java.git</connection>
+ <developerConnection>scm:git:git@github.com:grpc/grpc-java.git</developerConnection>
+ <url>https://github.com/grpc/grpc-java</url>
+ </scm>
+</project>
diff --git a/contrib/java/io/grpc/grpc-protobuf-lite/1.51.0/pom.xml b/contrib/java/io/grpc/grpc-protobuf-lite/1.51.0/pom.xml
new file mode 100644
index 0000000000..732f64ca3a
--- /dev/null
+++ b/contrib/java/io/grpc/grpc-protobuf-lite/1.51.0/pom.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-protobuf-lite</artifactId>
+ <version>1.51.0</version>
+ <name>io.grpc:grpc-protobuf-lite</name>
+ <description>gRPC: Protobuf Lite</description>
+ <url>https://github.com/grpc/grpc-java</url>
+ <licenses>
+ <license>
+ <name>Apache 2.0</name>
+ <url>https://opensource.org/licenses/Apache-2.0</url>
+ </license>
+ </licenses>
+ <developers>
+ <developer>
+ <id>grpc.io</id>
+ <name>gRPC Contributors</name>
+ <email>grpc-io@googlegroups.com</email>
+ <url>https://grpc.io/</url>
+ <organization>gRPC Authors</organization>
+ <organizationUrl>https://www.google.com</organizationUrl>
+ </developer>
+ </developers>
+ <scm>
+ <connection>scm:git:https://github.com/grpc/grpc-java.git</connection>
+ <developerConnection>scm:git:git@github.com:grpc/grpc-java.git</developerConnection>
+ <url>https://github.com/grpc/grpc-java</url>
+ </scm>
+ <dependencies>
+ <dependency>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-api</artifactId>
+ <version>1.51.0</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-javalite</artifactId>
+ <version>3.21.7</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ <version>3.0.2</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>31.1-android</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/contrib/java/io/grpc/grpc-protobuf/1.51.0/pom.xml b/contrib/java/io/grpc/grpc-protobuf/1.51.0/pom.xml
new file mode 100644
index 0000000000..a96f97c7ab
--- /dev/null
+++ b/contrib/java/io/grpc/grpc-protobuf/1.51.0/pom.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-protobuf</artifactId>
+ <version>1.51.0</version>
+ <name>io.grpc:grpc-protobuf</name>
+ <description>gRPC: Protobuf</description>
+ <url>https://github.com/grpc/grpc-java</url>
+ <licenses>
+ <license>
+ <name>Apache 2.0</name>
+ <url>https://opensource.org/licenses/Apache-2.0</url>
+ </license>
+ </licenses>
+ <developers>
+ <developer>
+ <id>grpc.io</id>
+ <name>gRPC Contributors</name>
+ <email>grpc-io@googlegroups.com</email>
+ <url>https://grpc.io/</url>
+ <organization>gRPC Authors</organization>
+ <organizationUrl>https://www.google.com</organizationUrl>
+ </developer>
+ </developers>
+ <scm>
+ <connection>scm:git:https://github.com/grpc/grpc-java.git</connection>
+ <developerConnection>scm:git:git@github.com:grpc/grpc-java.git</developerConnection>
+ <url>https://github.com/grpc/grpc-java</url>
+ </scm>
+ <dependencies>
+ <dependency>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-api</artifactId>
+ <version>1.51.0</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ <version>3.0.2</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-java</artifactId>
+ <version>3.21.7</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.api.grpc</groupId>
+ <artifactId>proto-google-common-protos</artifactId>
+ <version>2.9.0</version>
+ <scope>compile</scope>
+ <exclusions>
+ <exclusion>
+ <artifactId>api-common</artifactId>
+ <groupId>com.google.api</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-protobuf-lite</artifactId>
+ <version>1.51.0</version>
+ <scope>compile</scope>
+ <exclusions>
+ <exclusion>
+ <artifactId>protobuf-javalite</artifactId>
+ <groupId>com.google.protobuf</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>31.1-android</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/contrib/java/io/grpc/grpc-stub/1.51.0/pom.xml b/contrib/java/io/grpc/grpc-stub/1.51.0/pom.xml
new file mode 100644
index 0000000000..49fbf330ed
--- /dev/null
+++ b/contrib/java/io/grpc/grpc-stub/1.51.0/pom.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-stub</artifactId>
+ <version>1.51.0</version>
+ <name>io.grpc:grpc-stub</name>
+ <description>gRPC: Stub</description>
+ <url>https://github.com/grpc/grpc-java</url>
+ <licenses>
+ <license>
+ <name>Apache 2.0</name>
+ <url>https://opensource.org/licenses/Apache-2.0</url>
+ </license>
+ </licenses>
+ <developers>
+ <developer>
+ <id>grpc.io</id>
+ <name>gRPC Contributors</name>
+ <email>grpc-io@googlegroups.com</email>
+ <url>https://grpc.io/</url>
+ <organization>gRPC Authors</organization>
+ <organizationUrl>https://www.google.com</organizationUrl>
+ </developer>
+ </developers>
+ <scm>
+ <connection>scm:git:https://github.com/grpc/grpc-java.git</connection>
+ <developerConnection>scm:git:git@github.com:grpc/grpc-java.git</developerConnection>
+ <url>https://github.com/grpc/grpc-java</url>
+ </scm>
+ <dependencies>
+ <dependency>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-api</artifactId>
+ <version>1.51.0</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>31.1-android</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_annotations</artifactId>
+ <version>2.14.0</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/contrib/java/javax/annotation/javax.annotation-api/1.3.1/pom.xml b/contrib/java/javax/annotation/javax.annotation-api/1.3.1/pom.xml
new file mode 100644
index 0000000000..7612a81e34
--- /dev/null
+++ b/contrib/java/javax/annotation/javax.annotation-api/1.3.1/pom.xml
@@ -0,0 +1,319 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2012-2017 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://oss.oracle.com/licenses/CDDL+GPL-1.1
+ or LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>net.java</groupId>
+ <artifactId>jvnet-parent</artifactId>
+ <version>3</version>
+ </parent>
+
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ <version>1.3.1</version>
+
+ <properties>
+ <non.final>false</non.final>
+ <spec.version>1.3</spec.version>
+ <extension.name>javax.annotation</extension.name>
+ <bundle.symbolicName>javax.annotation-api</bundle.symbolicName>
+ <vendor.name>Oracle Corporation</vendor.name>
+ <implementation.vendor.id>org.glassfish</implementation.vendor.id>
+ <findbugs.version>2.3.1</findbugs.version>
+ <findbugs.exclude>exclude.xml</findbugs.exclude>
+ <findbugs.threshold>Low</findbugs.threshold>
+ </properties>
+ <name>${extension.name} API</name>
+ <description>Common Annotations for the JavaTM Platform API</description>
+
+ <url>http://jcp.org/en/jsr/detail?id=250</url>
+
+ <developers>
+ <developer>
+ <id>ldemichiel</id>
+ <name>Linda De Michiel</name>
+ <organization>Oracle Corp.</organization>
+ <roles>
+ <role>lead</role>
+ </roles>
+ </developer>
+ </developers>
+
+ <organization>
+ <name>GlassFish Community</name>
+ <url>https://javaee.github.io/glassfish</url>
+ </organization>
+ <licenses>
+ <license>
+ <name>CDDL + GPLv2 with classpath exception</name>
+ <url>https://github.com/javaee/javax.annotation/blob/master/LICENSE</url>
+ <distribution>repo</distribution>
+ <comments>A business-friendly OSS license</comments>
+ </license>
+ </licenses>
+ <issueManagement>
+ <system>GitHub</system>
+ <url>https://github.com/javaee/javax.annotation/issues</url>
+ </issueManagement>
+ <mailingLists>
+ <mailingList>
+ <name>GlassFish Developer</name>
+ <archive>javaee-spec@javaee.groups.io</archive>
+ </mailingList>
+ </mailingLists>
+ <scm>
+ <connection>scm:git:https://github.com/javaee/javax.annotation.git</connection>
+ <developerConnection>scm:git:git@github.com:javaee/javax.annotation.git</developerConnection>
+ <url>https://github.com/javaee/javax.annotation</url>
+ <tag>1.3.1</tag>
+ </scm>
+
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**/*.properties</include>
+ <include>**/*.html</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <excludes>
+ <exclude>META-INF/README</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.5.1</version>
+ <configuration>
+ <source>1.8</source>
+ <target>1.8</target>
+ <compilerArgument>-Xlint:unchecked</compilerArgument>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.glassfish.build</groupId>
+ <artifactId>spec-version-maven-plugin</artifactId>
+ <version>1.2</version>
+ <configuration>
+ <spec>
+ <nonFinal>${non.final}</nonFinal>
+ <jarType>api</jarType>
+ <specBuild>${spec.build}</specBuild>
+ <specVersion>${spec.version}</specVersion>
+ <newSpecVersion>${new.spec.version}</newSpecVersion>
+ <specImplVersion>${project.version}</specImplVersion>
+ <apiPackage>${extension.name}</apiPackage>
+ </spec>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>set-spec-properties</goal>
+ <goal>check-module</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>1.4.3</version>
+ <configuration>
+ <supportedProjectTypes>
+ <supportedProjectType>jar</supportedProjectType>
+ </supportedProjectTypes>
+ <instructions>
+ <Bundle-Version>${spec.bundle.version}</Bundle-Version>
+ <Bundle-SymbolicName>${spec.bundle.symbolic-name}</Bundle-SymbolicName>
+ <Extension-Name>${spec.extension.name}</Extension-Name>
+ <Implementation-Version>${spec.implementation.version}</Implementation-Version>
+ <Specification-Version>${spec.specification.version}</Specification-Version>
+ <Bundle-Description>
+ Java(TM) Common Annotations ${spec.version} API Design Specification
+ </Bundle-Description>
+ <Specification-Vendor>${vendor.name}</Specification-Vendor>
+ <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
+ <Implementation-Vendor-Id>${implementation.vendor.id}</Implementation-Vendor-Id>
+ </instructions>
+ </configuration>
+ <executions>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.4</version>
+ <configuration>
+ <archive>
+ <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
+ <manifestEntries>
+ <!-- for JDK 9 -->
+ <Automatic-Module-Name>
+ java.annotation
+ </Automatic-Module-Name>
+ </manifestEntries>
+ </archive>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-remote-resources-plugin</artifactId>
+ <version>1.2.1</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>process</goal>
+ </goals>
+ <configuration>
+ <resourceBundles>
+ <resourceBundle>org.glassfish:legal:1.1</resourceBundle>
+ </resourceBundles>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <version>2.1</version>
+ <configuration>
+ <includePom>true</includePom>
+ </configuration>
+ <executions>
+ <execution>
+ <id>attach-sources</id>
+ <goals>
+ <goal>jar-no-fork</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.8</version>
+ <executions>
+ <execution>
+ <phase>javadoc</phase>
+ <goals>
+ <goal>javadoc</goal>
+ </goals>
+ <configuration>
+ <groups>
+ <group>
+ <title>Common Annotations API Documentation</title>
+ <packages>javax.annotation</packages>
+ </group>
+ </groups>
+ <bottom>
+<![CDATA[Copyright &#169; 1999-2017,
+ <a href="http://www.oracle.com">Oracle</a>
+ and/or its affiliates. All Rights Reserved.
+ Use is subject to
+ <a href="{@docRoot}/doc-files/speclicense.html" target="_top">license terms</a>.
+]]>
+ </bottom>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <version>${findbugs.version}</version>
+ <configuration>
+ <threshold>${findbugs.threshold}</threshold>
+ <excludeFilterFile>${findbugs.exclude}</excludeFilterFile>
+ <findbugsXmlOutput>true</findbugsXmlOutput>
+ <findbugsXmlWithMessages>true</findbugsXmlWithMessages>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-release-plugin</artifactId>
+ <version>2.5.3</version>
+ <configuration>
+ <mavenExecutorId>forked-path</mavenExecutorId>
+ <useReleaseProfile>false</useReleaseProfile>
+ <arguments>${release.arguments}</arguments>
+ <tagNameFormat>@{project.version}</tagNameFormat>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-site-plugin</artifactId>
+ <version>3.1</version>
+ <configuration>
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <version>${findbugs.version}</version>
+ <configuration>
+ <threshold>${findbugs.threshold}</threshold>
+ <excludeFilterFile>${findbugs.exclude}</excludeFilterFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/contrib/java/org/checkerframework/checker-qual/3.12.0/pom.xml b/contrib/java/org/checkerframework/checker-qual/3.12.0/pom.xml
new file mode 100644
index 0000000000..baf6fcc9c8
--- /dev/null
+++ b/contrib/java/org/checkerframework/checker-qual/3.12.0/pom.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <!-- This module was also published with a richer model, Gradle metadata, -->
+ <!-- which should be used instead. Do not delete the following line which -->
+ <!-- is to indicate to Gradle or any Gradle module metadata file consumer -->
+ <!-- that they should prefer consuming it instead. -->
+ <!-- do_not_remove: published-with-gradle-metadata -->
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.checkerframework</groupId>
+ <artifactId>checker-qual</artifactId>
+ <version>3.12.0</version>
+ <name>Checker Qual</name>
+ <description>checker-qual contains annotations (type qualifiers) that a programmer
+writes to specify Java code for type-checking by the Checker Framework.
+</description>
+ <url>https://checkerframework.org</url>
+ <licenses>
+ <license>
+ <name>The MIT License</name>
+ <url>http://opensource.org/licenses/MIT</url>
+ <distribution>repo</distribution>
+ </license>
+ </licenses>
+ <developers>
+ <developer>
+ <id>mernst</id>
+ <name>Michael Ernst</name>
+ <email>mernst@cs.washington.edu</email>
+ <url>https://homes.cs.washington.edu/~mernst/</url>
+ <organization>University of Washington</organization>
+ <organizationUrl>https://www.cs.washington.edu/</organizationUrl>
+ </developer>
+ <developer>
+ <id>smillst</id>
+ <name>Suzanne Millstein</name>
+ <email>smillst@cs.washington.edu</email>
+ <organization>University of Washington</organization>
+ <organizationUrl>https://www.cs.washington.edu/</organizationUrl>
+ </developer>
+ </developers>
+ <scm>
+ <connection>scm:git:git://github.com/typetools/checker-framework.git</connection>
+ <developerConnection>scm:git:ssh://git@github.com/typetools/checker-framework.git</developerConnection>
+ <url>https://github.com/typetools/checker-framework.git</url>
+ </scm>
+</project>