tchannel
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.uber.tchannel</groupId>
<artifactId>tchannel</artifactId>
<version>0.8.30</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (c) 2015 Uber Technologies, Inc.
~
~ Permission is hereby granted, free of charge, to any person obtaining a copy
~ of this software and associated documentation files (the "Software"), to deal
~ in the Software without restriction, including without limitation the rights
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
~ copies of the Software, and to permit persons to whom the Software is
~ furnished to do so, subject to the following conditions:
~
~ The above copyright notice and this permission notice shall be included in
~ all copies or substantial portions of the Software.
~
~ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
~ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
~ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
~ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
~ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
~ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
~ THE SOFTWARE.
-->
<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>
<groupId>com.uber.tchannel</groupId>
<artifactId>tchannel</artifactId>
<version>0.8.30</version>
<packaging>pom</packaging>
<name>${project.artifactId}</name><!-- Nexus "pom-staging" rule requires this (redundant) element -->
<description>Network multiplexing and framing protocol for RPC</description>
<url>https://github.com/uber/tchannel-java</url>
<licenses>
<license>
<name>MIT License</name>
<url>http://www.opensource.org/licenses/mit-license.php</url>
</license>
</licenses>
<developers>
<developer>
<name>Will Salisbury</name>
<email>wjs@uber.com</email>
<organization>Uber Technologies, Inc.</organization>
<organizationUrl>https://uber.github.io</organizationUrl>
</developer>
<developer>
<name>Juncao Li</name>
<email>juncaoli@uber.com</email>
<organization>Uber Technologies, Inc.</organization>
<organizationUrl>https://uber.github.io</organizationUrl>
</developer>
<developer>
<name>Junchao Wu</name>
<email>junchaow@uber.com</email>
<organization>Uber Technologies, Inc.</organization>
<organizationUrl>https://uber.github.io</organizationUrl>
</developer>
</developers>
<scm>
<connection>scm:git:git@github.com:uber/tchannel-java.git</connection>
<developerConnection>scm:git:git@github.com:uber/tchannel-java.git</developerConnection>
<url>git@github.com:uber/tchannel-java.git</url>
<tag>tchannel-0.8.30</tag>
</scm>
<modules>
<module>tchannel-core</module>
<module>tchannel-example</module>
<module>tchannel-benchmark</module>
<module>tchannel-hyperbahn</module>
<module>tchannel-crossdock</module>
</modules>
<properties>
<argLine>-Dio.netty.leakDetectionLevel=paranoid</argLine>
<!-- store method parameter names in the bytecode (java 8+) -->
<maven.compiler.parameters>true</maven.compiler.parameters>
<maven.compiler.showWarnings>true</maven.compiler.showWarnings>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>${maven.compiler.source}</maven.compiler.target>
<!-- https://issues.apache.org/jira/browse/MCOMPILER-205 -->
<maven.compiler.useIncrementalCompilation>false</maven.compiler.useIncrementalCompilation>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jmh.version>1.19</jmh.version>
<se.eris.notnull.instrument>false</se.eris.notnull.instrument><!-- off by default -->
<slf4j.version>1.7.25</slf4j.version>
<opentracing.version>0.32.0</opentracing.version>
</properties>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-bom</artifactId>
<version>4.1.17.Final</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>2.28.2</version>
</dependency>
<dependency>
<groupId>com.github.stefanbirkner</groupId>
<artifactId>system-rules</artifactId>
<version>1.19.0</version>
</dependency>
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.2</version>
</dependency>
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
<version>0.9.3</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.0-android</version>
</dependency>
<dependency>
<groupId>io.opentracing</groupId>
<artifactId>opentracing-api</artifactId>
<version>${opentracing.version}</version>
</dependency>
<dependency>
<groupId>io.opentracing</groupId>
<artifactId>opentracing-noop</artifactId>
<version>${opentracing.version}</version>
</dependency>
<dependency>
<groupId>io.jaegertracing</groupId>
<artifactId>jaeger-core</artifactId>
<version>0.35.5</version>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>15.0</version>
</dependency>
<dependency>
<groupId>org.openjdk.jmh</groupId>
<artifactId>jmh-core</artifactId>
<version>${jmh.version}</version>
</dependency>
<dependency>
<groupId>org.openjdk.jmh</groupId>
<artifactId>jmh-generator-annprocess</artifactId>
<version>${jmh.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgs>
<arg>-Xlint:all</arg>
</compilerArgs>
</configuration>
</plugin>
<plugin><!-- enforce some requirements across all poms (that inherit from this one) -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforce-at-validate-phase</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<!-- http://maven.apache.org/enforcer/enforcer-rules/reactorModuleConvergence.html -->
<reactorModuleConvergence />
<!-- http://maven.apache.org/enforcer/enforcer-rules/requireJavaVersion.html -->
<requireJavaVersion>
<version>[${maven.compiler.source},)</version>
</requireJavaVersion>
<!-- http://maven.apache.org/enforcer/enforcer-rules/requireMavenVersion.html -->
<requireMavenVersion>
<version>3.0</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
<execution><!-- these rules require test scope resolution to work correctly (on current reactor build) -->
<id>enforce-at-test-compile-phase</id>
<phase>test-compile</phase>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<!-- http://maven.apache.org/enforcer/enforcer-rules/bannedDependencies.html -->
<bannedDependencies>
<!--
ban various logging implementations except slf4j-simple (should be used in tests only)
if a dependency pulls some of these in - they must be added to the dependency's
exclusion list
-->
<excludes>
<exclude>commons-logging</exclude>
<exclude>log4j</exclude>
<exclude>ch.qos.logback</exclude>
<exclude>org.slf4j:slf4j-*</exclude><!-- exclude all slf4j adaptors, except included -->
</excludes>
<includes>
<include>org.slf4j:slf4j-api</include><!-- allow slf4j api -->
<include>org.slf4j:slf4j-simple</include><!-- allow slf4j-simple -->
</includes>
</bannedDependencies>
<!-- http://maven.apache.org/enforcer/enforcer-rules/requireUpperBoundDeps.html -->
<requireUpperBoundDeps />
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<configuration>
<generateBackupPoms>false</generateBackupPoms>
</configuration>
</plugin>
<plugin>
<groupId>se.eris</groupId>
<artifactId>notnull-instrumenter-maven-plugin</artifactId>
</plugin>
</plugins>
<pluginManagement>
<plugins><!-- please keep the list sorted by groupId and artifactId -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.4.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.6</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.4</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.6</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.0.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
</plugin>
<plugin>
<!-- newer official org.apache.thrift:thrift-maven-plugin:0.9.3 is broken -->
<groupId>org.apache.thrift.tools</groupId>
<artifactId>maven-thrift-plugin</artifactId>
<version>0.1.11</version>
<configuration>
<generator>java:private-members</generator>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<!-- mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent test org.jacoco:jacoco-maven-plugin:report -->
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.0</version>
<configuration>
<excludes>
<!-- use "binary class name" with a `*` suffix, see https://github.com/jacoco/jacoco/issues/34 -->
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.7</version>
</plugin>
<plugin>
<groupId>se.eris</groupId>
<artifactId>notnull-instrumenter-maven-plugin</artifactId>
<version>0.6.6</version>
<executions>
<execution>
<goals>
<goal>instrument</goal>
<goal>tests-instrument</goal>
</goals>
</execution>
</executions>
<configuration>
<notNull>
<param>org.jetbrains.annotations.NotNull</param>
</notNull>
<nullable>
<param>org.jetbrains.annotations.Nullable</param>
</nullable>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>development</id>
<activation>
<jdk>!1.7</jdk>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<dependencies>
<dependency>
<groupId>com.google.errorprone</groupId>
<artifactId>error_prone_core</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-compiler-javac-errorprone</artifactId>
<version>2.8.2</version>
</dependency>
</dependencies>
<configuration>
<compilerArgs combine.children="append">
<!-- - - - Error Prone flags (http://errorprone.info/docs/flags) - - - -->
<!-- Exclude target/generated-[test-]sources from Error Prone analysis -->
<arg>-XepExcludedPaths:\Q${project.build.directory}\E/generated(-test)?-sources/.*</arg>
<arg>-XepDisableWarningsInGeneratedCode</arg>
<!-- Ignore check names unknown to error prone -->
<arg>-XepIgnoreUnknownCheckNames</arg>
<!-- - - - Error Prone check tweaks (http://errorprone.info/bugpatterns) - - - -->
<!-- Way too many false positives -->
<arg>-Xep:FutureReturnValueIgnored:OFF</arg>
<!-- Questionable value: http://errorprone.info/bugpattern/OperatorPrecedence -->
<arg>-Xep:OperatorPrecedence:OFF</arg>
<!-- Experimental : ERROR -->
<arg>-Xep:ClassName</arg>
<arg>-Xep:ComparisonContractViolated</arg>
<arg>-Xep:DepAnn</arg>
<arg>-Xep:EmptyIf</arg>
<arg>-Xep:LongLiteralLowerCaseSuffix</arg>
<arg>-Xep:NumericEquality</arg>
<!-- false-positives in error-prone 2.2.0 -->
<arg>-Xep:ParameterPackage:OFF</arg>
<!-- Experimental : WARNING -->
<arg>-Xep:BigDecimalLiteralDouble:ERROR</arg>
<arg>-Xep:EmptyTopLevelDeclaration:ERROR</arg>
<!-- Questionable value: http://errorprone.info/bugpattern/InconsistentOverloads -->
<arg>-Xep:InconsistentOverloads:OFF</arg>
<arg>-Xep:MissingDefault</arg>
<arg>-Xep:NonCanonicalStaticMemberImport</arg>
<arg>-Xep:PrimitiveArrayPassedToVarargsMethod</arg>
<arg>-Xep:StaticQualifiedUsingExpression</arg>
<arg>-Xep:StringEquality</arg>
<arg>-Xep:StringSplit</arg>
<arg>-Xep:TestExceptionChecker</arg>
<arg>-Xep:UnnecessaryDefaultInEnumSwitch</arg>
<!-- Experimental : SUGGESTION -->
<!-- questionable value -->
<arg>-Xep:ConstantField:OFF</arg>
<arg>-Xep:FieldMissingNullable:WARN</arg>
<arg>-Xep:MethodCanBeStatic</arg>
<arg>-Xep:PackageLocation:ERROR</arg>
<arg>-Xep:ParameterNotNullable:ERROR</arg>
<arg>-Xep:PrivateConstructorForUtilityClass:WARN</arg>
<arg>-Xep:RemoveUnusedImports:ERROR</arg>
<arg>-Xep:ReturnMissingNullable:WARN</arg>
<arg>-Xep:SwitchDefault</arg>
<arg>-Xep:UngroupedOverloads</arg>
<!--<arg>-XepAllErrorsAsWarnings</arg>-->
</compilerArgs>
<compilerId>javac-with-errorprone</compilerId>
<forceJavacCompilerUse>true</forceJavacCompilerUse>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>ossrh</id>
<activation>
<property>
<name>build</name>
<value>release</value>
</property>
</activation>
<build>
<plugins>
<plugin><!-- enforce some requirements across all poms (that inherit from this one) -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforce-at-validate-phase</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<!-- http://maven.apache.org/enforcer/enforcer-rules/requireJavaVersion.html -->
<requireJavaVersion>
<!-- require java 7 for release builds -->
<version>[${maven.compiler.source},${maven.compiler.source}.999)</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<!--
http://central.sonatype.org/pages/apache-maven.html
Distribution Management and Authentication
-->
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
<!--
http://central.sonatype.org/pages/apache-maven.html
Performing a Release Deployment with the Maven Release Plugin
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<autoVersionSubmodules>true</autoVersionSubmodules>
<useReleaseProfile>false</useReleaseProfile>
<releaseProfiles>ossrh</releaseProfiles>
<goals>deploy</goals>
</configuration>
</plugin>
<!--
http://central.sonatype.org/pages/apache-maven.html
GPG Signed Components
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<!--
http://central.sonatype.org/pages/apache-maven.html
Javadoc and Sources Attachments
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<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>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<excludePackageNames>*.generated.*</excludePackageNames>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>