Skip to content
Snippets Groups Projects
Select Git revision
  • 0c1f7e3bfa9ad93ddca2c7dab7931ffe40f78539
  • main default
  • kinetic protected
  • hydro
  • indigo
  • obsolete/master
  • 0.3.3
  • 0.3.2
  • 0.3.1
  • 0.3.0
  • 0.1.24
  • 0.1.23
  • 0.2.1
  • 0.1.22
  • 0.1.21
  • 0.1.20
  • 0.1.19
  • 0.1.18
  • 0.1.17
  • 0.1.16
  • 0.1.15
  • 0.1.14
  • 0.1.13
  • 0.1.12
  • 0.1.11
  • 0.1.10
26 results

ros-java.gradle

Blame
  • ros-java.gradle 2.67 KiB
    /*
     * Copyright (C) 2014 Google Inc.
     *
     * 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.
     */
    
    /*
     * Apply this gradle script to configure maven url's and other properties in
     * the root build.gradle of any rosjava project. Use alongside the api provided
     * by the ros-java gradle plugin.
     * 
     * Usage:
     * 
     * subprojects {
     *   apply from: "https://github.com/rosjava/rosjava_bootstrap/raw/indigo/ros-java.gradle"
     *   apply plugin: 'ros-java'
     *   ...
     */
    
    rootProject.subprojects {
      /***********************
       * Plugins
       ***********************/
      if (!plugins.findPlugin('maven')) {
        apply(plugin: 'maven')
      }
      if (!plugins.findPlugin('java')) {
        apply(plugin: 'java')
      }
      if (!plugins.findPlugin('maven-publish')) {
        apply(plugin: 'maven-publish')
      }
    
      /***********************
       * Environment Settings
       ***********************/
      ros.mavenRepository = System.getenv("ROS_MAVEN_REPOSITORY")
      ros.mavenDeploymentRepository = System.getenv("ROS_MAVEN_DEPLOYMENT_REPOSITORY")
      String mavenPath = System.getenv("ROS_MAVEN_PATH")
      if (mavenPath != null) {
        ros.mavenPath = mavenPath.tokenize(":")
      }
    
      /***********************
       * Maven Repos
       ***********************/
      repositories {
        if (ros.mavenPath != null) {
          ros.mavenPath.each { path ->
            maven {
              url uri(path)
            }
          }
        }
        if (ros.mavenRepository != null) {
          maven {
            url ros.mavenRepository
          }
        }
        mavenLocal()
        maven {
          url "http://repository.springsource.com/maven/bundles/release"
        }
        maven {
          url "http://repository.springsource.com/maven/bundles/external"
        }
        mavenCentral()
      }
      
      /***********************
       * Java
       ***********************/
      sourceCompatibility = 1.6
      targetCompatibility = 1.6
    
      /***********************
       * Maven Deployment
       ***********************/
      if ( ros.mavenDeploymentRepository != 'null' && project.ros.mavenDeploymentRepository != '' ) {
        publishing {
          publications {
            mavenJava(MavenPublication) {
              from project.components.java
            }
          }
          repositories {
            maven {
              url 'file://' + project.ros.mavenDeploymentRepository
            }
          }
        }
      } 
    }