All Projects → trivago → Triava

trivago / Triava

Licence: apache-2.0
The triava project contains several of trivago's core libraries for Java-based projects: caching, collections, annotations, concurrency libraries and more.

Programming Languages

java
68154 projects - #9 most used programming language

triava

The triava project contains several of trivago's core libraries for Java-based projects: caching, collections, annotations, concurrency libraries and more.

TriavaCache (short: tcache) is fully JCache / JSR107 (Java Caching) compliant. More information on tcache:

License

Licensed under the Apache License, Version 2.0

Usage:

To start, look at the examples folder. Further interesting examples are in the tcache unit test folder and util unit test folder.

Usage in Maven: pom.xml

triava is available from Maven Central

  <dependencies>
    <dependency>
      <groupId>com.trivago</groupId>
      <artifactId>triava</artifactId>
      <version>2.0.1</version>
    </dependency>
  </dependencies>

Usage in Gradle: build.gradle

dependencies {
	compile 'com.trivago:triava:2.0.1'
}

Changes

See Changelog

Building:

triava requires Java 8 and depends on the JSR107 API javax.cache:cache-api:1.0.0. Dependencies are resolved by Maven. The following will build everything, including Javadoc and a source jar:

mvn package

This will create three artifacts in the target/ folder:

  • triava-[version].jar
  • triava-[version]-sources.jar
  • triava-[version]-javadoc.jar

Maintainers can upload new versions to Maven Central Staging:

Before uploading a new version, you should:

  • Fix all Javadocs warnings
  • Run long tests from package com.trivago.triava.tcache.integration manually
  • Run FindBugs and fix all bugs
  • Check for missing licensing header
find . -name '*.java' ! -path './src/test/java/com/trivago/triava/tcache/tmp/*' -print0 | xargs -0 grep -L "Licensed under the Apache License, Version 2.0"
  • Release notes and versioning
    • Update Changelog
    • Update pom.xml with version number
    • Update this README: Update all version numbers
    • Commit changes
  • Upload to Maven Central (check with maintainers on details, e.g. in the triava Knowledge page)
  • Tag the release, if the release is good
mvn clean deploy -P release
version=2.0.1; git tag -a v$version -m "v$version"
git push --tags

Examples

Have a look at the examples folder.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].