All Projects → xvik → Dropwizard Guicey

xvik / Dropwizard Guicey

Licence: mit
Dropwizard guice integration

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Dropwizard Guicey

post-kafka-opentracing
Post: Tracing Kafka Applications
Stars: ✭ 18 (-90.86%)
Mutual labels:  dropwizard
Dropwizard
A damn simple library for building production-ready RESTful web services.
Stars: ✭ 8,078 (+4000.51%)
Mutual labels:  dropwizard
Dropwizard Jobs
Scheduling / Quartz integration for Dropwizard
Stars: ✭ 132 (-32.99%)
Mutual labels:  dropwizard
Guardrail
Principled code generation from OpenAPI specifications
Stars: ✭ 396 (+101.02%)
Mutual labels:  dropwizard
Dropwizard Jwt Cookie Authentication
Dropwizard bundle managing authentication through JWT cookies
Stars: ✭ 29 (-85.28%)
Mutual labels:  dropwizard
Clojure News Feed
evaluating various technologies by implementing a news feed micro-service
Stars: ✭ 65 (-67.01%)
Mutual labels:  dropwizard
kotlin-dropwizard
Getting Started with Dropwizard and Kotlin
Stars: ✭ 43 (-78.17%)
Mutual labels:  dropwizard
Jax Rs Performance Comparison
⚡️ Performance Comparison of Jax-RS implementations and embedded containers
Stars: ✭ 181 (-8.12%)
Mutual labels:  dropwizard
Dropwizard Graphql
Dropwizard GraphQL Bundle
Stars: ✭ 49 (-75.13%)
Mutual labels:  dropwizard
Melon
Melon 🍈 - Dropwizard-like web service framework in Go (golang)
Stars: ✭ 111 (-43.65%)
Mutual labels:  dropwizard
Node Measured
A Node metrics library for measuring and reporting application-level metrics, inspired by Coda Hale, Yammer Inc's Dropwizard Metrics Libraries
Stars: ✭ 500 (+153.81%)
Mutual labels:  dropwizard
Dropwizard Hk2bundle
Dropwizard hk2 integration bundle
Stars: ✭ 12 (-93.91%)
Mutual labels:  dropwizard
Metrics Cdi
CDI extension for Dropwizard Metrics
Stars: ✭ 76 (-61.42%)
Mutual labels:  dropwizard
Ratelimitj
A Java library for Rate-Limiting, providing extensible storage and application framework adaptors.
Stars: ✭ 362 (+83.76%)
Mutual labels:  dropwizard
Hikaku
A library that tests if the implementation of a REST-API meets its specification.
Stars: ✭ 154 (-21.83%)
Mutual labels:  dropwizard
dropwizard-consul
Dropwizard Consul Bundle
Stars: ✭ 55 (-72.08%)
Mutual labels:  dropwizard
Dropwizard Cassandra
Dropwizard support for Cassandra
Stars: ✭ 60 (-69.54%)
Mutual labels:  dropwizard
Stubbornjava
Unconventional Java code for building web servers / services without a framework. Think dropwizard but as a seed project instead of a framework. If this project had a theme it would be break the rules but be mindful of your decisions.
Stars: ✭ 184 (-6.6%)
Mutual labels:  dropwizard
Pac4j
Security engine for Java (authentication, authorization, multi frameworks): OAuth, CAS, SAML, OpenID Connect, LDAP, JWT...
Stars: ✭ 2,097 (+964.47%)
Mutual labels:  dropwizard
Rufus
Rufus - fetches the paper for you!
Stars: ✭ 108 (-45.18%)
Mutual labels:  dropwizard

Dropwizard guice integration

License Build Status Appveyor build status codecov

DOCUMENTATION: http://xvik.github.io/dropwizard-guicey/

Additional repositories:

Support:

About

Dropwizard 2.0.20 guice 5.0.1 integration.

Features:

  • Auto configuration from classpath scan and guice bindings.
  • Yaml config values bindings by path or unique sub objects.
  • Advanced Web support
  • Dropwizard style console reporting: detected (and installed) extensions are printed to console to remove uncertainty
  • Test support: custom junit and spock extensions
  • Advanced test abilities to disable or override application logic
  • Developer friendly:
    • core integrations may be replaced (to better fit needs)
    • rich api for developing custom integrations, and hooking into lifecycle)
    • out of the box support for plug-n-play plugins (auto discoverable)
    • diagnostic tools (reports), support for custom diagnostic tools

Sponsors

    Channel

If guicey makes your life easier, you can support its development.

Thanks to

Setup

Releases are published to bintray jcenter (package appear immediately after release) and then to maven central (require few days after release to be published).

JCenter Maven Central

May be used through extensions project BOM or directly.

Maven:

<dependency>
  <groupId>ru.vyarus</groupId>
  <artifactId>dropwizard-guicey</artifactId>
  <version>5.3.0</version>
</dependency>

Gradle:

implementation 'ru.vyarus:dropwizard-guicey:5.3.0'
Dropwizard Guicey
2.0 5.3.0
1.3 4.2.2
1.1, 1.2 4.1.0
1.0 4.0.1
0.9 3.3.0
0.8 3.1.0
0.7 1.1.0

BOM

Guicey pom may be also used as maven BOM.

NOTE: If you use guicey extensions then use extensions BOM instead (it already includes guicey BOM).

BOM usage is highly recommended as it allows you to correctly update dropwizard dependencies.

Gradle:

dependencies {
    implementation platform('ru.vyarus:dropwizard-guicey:5.3.0')
    // uncomment to override dropwizard and its dependencies versions    
    //implementation platform('io.dropwizard:dropwizard-dependencies:2.0.20')

    // no need to specify versions
    implementation 'ru.vyarus:dropwizard-guicey'
   
    implementation 'io.dropwizard:dropwizard-auth'
    implementation 'com.google.inject:guice-assistedinject'   
     
    testImplementation 'io.dropwizard:dropwizard-test'
    testImplementation 'org.spockframework:spock-core'
}

Maven:

<dependencyManagement>  
    <dependencies>
        <dependency>
            <groupId>ru.vyarus</groupId>
            <artifactId>dropwizard-guicey</artifactId>
            <version>5.3.0</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency> 
        <!-- uncomment to override dropwizard and its dependencies versions  
        <dependency>
            <groupId>io.dropwizard/groupId>
            <artifactId>dropwizard-dependencies</artifactId>
            <version>2.0.20</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency> -->                 
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>ru.vyarus</groupId>
        <artifactId>dropwizard-guicey</artifactId>
    </dependency>
</dependencies>

BOM includes:

BOM Artifact
Guicey itself ru.vyarus:dropwizard-guicey
Dropwizard BOM io.dropwizard:dropwizard-bom
Guice BOM com.google.inject:guice-bom
HK2 bridge org.glassfish.hk2:guice-bridge
System rules (required for StartupErrorRule) com.github.stefanbirkner:system-rules
Spock org.spockframework:spock-core

Snapshots

Snapshots may be used through JitPack

Add JitPack repository:

repositories { maven { url 'https://jitpack.io' } }

For spring dependencies plugin (when guicey pom used as BOM):

dependencyManagement {
    resolutionStrategy {
        cacheChangingModulesFor 0, 'seconds'
    }
    imports {
        mavenBom "ru.vyarus:dropwizard-guicey:master-SNAPSHOT"
    }
}

For direct guicey dependency:

configurations.all {
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}

dependencies {
    implementation 'ru.vyarus:dropwizard-guicey:master-SNAPSHOT'
}

Note that in both cases resolutionStrategy setting required for correct updating snapshot with recent commits (without it you will not always have up-to-date snapshot)

OR you can depend on exact commit:

  • Go to JitPack project page
  • Select Commits section and click Get it on commit you want to use and use commit hash as version: ru.vyarus:dropwizard-guicey:56537f7d23

Maven:

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>  

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>ru.vyarus</groupId>
            <artifactId>dropwizard-guicey</artifactId>
            <version>master-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>ru.vyarus</groupId>
        <artifactId>dropwizard-guicey</artifactId>
    </dependency>
</dependencies>

Or simply change version if used as direct dependency (repository must be also added):

<dependency>
    <groupId>ru.vyarus</groupId>
    <artifactId>dropwizard-guicey</artifactId>
    <version>master-SNAPSHOT</version>
</dependency>

Usage

Read documentation

Might also like


java lib generator

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].