Skip to content

Plugin for simplify project configuration

License

Notifications You must be signed in to change notification settings

Dartaan/art-gradle

 
 

Repository files navigation

Application Gradle Plugin

Application Gradle Plugin provides functional for configuring java/scala/kotlin/groovy projects. Plugin is part of ART

Badges

Build Status Gitter GitHub repo size Codacy Badge

Build and Binaries

Releases are available via Gradle Plugin Portal.

Example:

plugins {
    id("io.github.art.project") version "1.0.98"
}

art {
  idea()
  lombok()
  tests()
  
  // Modules that includes into result project *.jar 
  // Alternatives: providedModules (not included into jar)  and 
  // testModules (use in tests sources)
  /*embeddedModules {
      // For specify version
      useVersion("1.+") //or useVersion() without arguments. Then will be used "1.+" version as default

      // For full kit of modules 
      kit()    
    
      // For using protocols
      //protocols {
          //grpcServer()
          //grpcCommunication()
          //httpServer()
          //httpCommunication()
          //rsocket()
          //soapServer()
          //soapCommunication()
      //}
      
      // For using databases
      //db {
          //sql()
          //tarantool()
          //rocksdb()
      //}   
      
      // For using file configurations
      //localConfigurationManagement()
      
      // For using remote configurations    
      //remoteConfigurationManagement()

      // For using file and configurations    
      //configurationManagement()

      // For using local scheduler
      //localScheduling()
      
      // For using remote scheduler
      //remoteScheduling()

      // For using local and remote scheduler
      //scheduling()
      
      // For using kafka consumer
      //kafkaConsumer()            
      
      // For using kafka producer
      //producer()            
      
      // For using kafka consumer and producer
      //kafka()            

     // dataFormats {
          // Includes by default if using grpc/rsocket/remote configuration modules
          //protobuf()
          // Includes by default if using rsocket/http modules
          //json()
          // Includes by default if using rsocket/soap modules
          //xml()
     // }            
  }*/  
    
  //For using ART mappers and specifications generator
  //generator {
    //packageName = "<path to application main package (parent of 'model' and/or 'service' packages)>"
  //}

  // For using web (sources need to be placed in src/main/web (by default) 
  //web()
  
  // For using Groovy 
  //groovy()

  // For using Kotlin 
  //kotlin()

  // For using Scala 
  //scala()
  
  // For using BDD Spock Framework  
  //spockFramework()

  // For using JMH  
  //jmh()

  // For using Gatling  
  //gatling()
 }

Requirements

  • Java 8+ - heavy dependence on Java 8+ functional APIs
  • Gradle 6.+

Bugs and Feedback

For bugs, questions and discussions please use the Github Issues.

LICENSE

ART Java

Copyright 2019 ART

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.

About

Plugin for simplify project configuration

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Kotlin 94.7%
  • XSLT 4.8%
  • Shell 0.5%