|  | <?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>4.28.0</version> | 
|  | </parent> | 
|  |  | 
|  | <artifactId>protobuf-java-util</artifactId> | 
|  | <packaging>bundle</packaging> | 
|  |  | 
|  | <name>Protocol Buffers [Util]</name> | 
|  | <description>Utilities for Protocol Buffers</description> | 
|  |  | 
|  | <dependencies> | 
|  | <dependency> | 
|  | <groupId>${project.groupId}</groupId> | 
|  | <artifactId>protobuf-java</artifactId> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>com.google.guava</groupId> | 
|  | <artifactId>guava</artifactId> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>com.google.errorprone</groupId> | 
|  | <artifactId>error_prone_annotations</artifactId> | 
|  | <version>2.5.1</version> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>com.google.j2objc</groupId> | 
|  | <artifactId>j2objc-annotations</artifactId> | 
|  | <version>2.8</version> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>com.google.code.findbugs</groupId> | 
|  | <artifactId>jsr305</artifactId> | 
|  | <version>3.0.2</version> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>com.google.guava</groupId> | 
|  | <artifactId>guava-testlib</artifactId> | 
|  | <scope>test</scope> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>com.google.code.gson</groupId> | 
|  | <artifactId>gson</artifactId> | 
|  | <version>2.8.9</version> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>junit</groupId> | 
|  | <artifactId>junit</artifactId> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>org.mockito</groupId> | 
|  | <artifactId>mockito-core</artifactId> | 
|  | <scope>test</scope> | 
|  | </dependency> | 
|  | <dependency> | 
|  | <groupId>com.google.truth</groupId> | 
|  | <artifactId>truth</artifactId> | 
|  | <scope>test</scope> | 
|  | </dependency> | 
|  | </dependencies> | 
|  |  | 
|  | <properties> | 
|  | <!-- Use the core proto dir so that we can call the core generation script --> | 
|  | <test.proto.dir>../core/src/test/proto</test.proto.dir> | 
|  | </properties> | 
|  |  | 
|  | <build> | 
|  | <plugins> | 
|  | <plugin> | 
|  | <artifactId>maven-antrun-plugin</artifactId> | 
|  | <executions> | 
|  | <!-- Generate the test protos --> | 
|  | <execution> | 
|  | <id>generate-test-sources</id> | 
|  | <phase>generate-test-sources</phase> | 
|  | <configuration> | 
|  | <target> | 
|  | <!-- Generate all of the test protos from the core module --> | 
|  | <ant antfile="../core/generate-test-sources-build.xml"/> | 
|  |  | 
|  | <!-- Generate additional test protos for this module --> | 
|  | <exec executable="${protoc}"> | 
|  | <arg value="--java_out=${generated.testsources.dir}"/> | 
|  | <arg value="--proto_path=${protobuf.source.dir}"/> | 
|  | <arg value="--proto_path=src/test/proto"/> | 
|  | <arg value="src/test/proto/com/google/protobuf/util/json_test.proto"/> | 
|  | <arg value="src/test/proto/com/google/protobuf/util/json_test_proto2.proto"/> | 
|  | </exec> | 
|  | </target> | 
|  | </configuration> | 
|  | <goals> | 
|  | <goal>run</goal> | 
|  | </goals> | 
|  | </execution> | 
|  | </executions> | 
|  | </plugin> | 
|  |  | 
|  | <!-- Add the generated test sources to the build --> | 
|  | <plugin> | 
|  | <groupId>org.codehaus.mojo</groupId> | 
|  | <artifactId>build-helper-maven-plugin</artifactId> | 
|  | <executions> | 
|  | <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> | 
|  |  | 
|  | <plugin> | 
|  | <groupId>org.codehaus.mojo</groupId> | 
|  | <artifactId>animal-sniffer-maven-plugin</artifactId> | 
|  | <configuration> | 
|  | <signature> | 
|  | <groupId>org.codehaus.mojo.signature</groupId> | 
|  | <artifactId>java18</artifactId> | 
|  | <version>1.0</version> | 
|  | </signature> | 
|  | <signature> | 
|  | <groupId>net.sf.androidscents.signature</groupId> | 
|  | <artifactId>android-api-level-21</artifactId> | 
|  | <version>5.0.1_r2</version> | 
|  | </signature> | 
|  | </configuration> | 
|  | <executions> | 
|  | <execution> | 
|  | <id>android</id> | 
|  | <phase>test</phase> | 
|  | <goals> | 
|  | <goal>check</goal> | 
|  | </goals> | 
|  | </execution> | 
|  | </executions> | 
|  | </plugin> | 
|  | <!-- Configure the OSGI bundle --> | 
|  | <plugin> | 
|  | <groupId>org.apache.felix</groupId> | 
|  | <artifactId>maven-bundle-plugin</artifactId> | 
|  | <extensions>true</extensions> | 
|  | <configuration> | 
|  | <instructions> | 
|  | <Automatic-Module-Name>com.google.protobuf.util</Automatic-Module-Name> <!-- Java9+ Jigsaw module name --> | 
|  | <Bundle-DocURL>https://developers.google.com/protocol-buffers/</Bundle-DocURL> | 
|  | <Bundle-SymbolicName>com.google.protobuf.util</Bundle-SymbolicName> | 
|  | <Export-Package>com.google.protobuf.util;version=${project.version}</Export-Package> | 
|  | </instructions> | 
|  | </configuration> | 
|  | </plugin> | 
|  |  | 
|  | <!-- Configure the fat jar to include all dependencies --> | 
|  | <plugin> | 
|  | <artifactId>maven-assembly-plugin</artifactId> | 
|  | <configuration> | 
|  | <descriptorRefs> | 
|  | <descriptorRef>jar-with-dependencies</descriptorRef> | 
|  | </descriptorRefs> | 
|  | </configuration> | 
|  | </plugin> | 
|  | </plugins> | 
|  | </build> | 
|  | </project> |