Zlatko Stamatov JavaSkop 13 December 2015

Slides:



Advertisements
Similar presentations
Jenkins User Conference San Francisco, Sept #jenkinsconf Business Process Model & Notation (BPMN) Workflows in Jenkins Max Spring Cisco
Advertisements

Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
Introduction to Maven Michael Youngstrom. Notes This is a training NOT a presentation Please ask questions Prerequisites – Introduction to the Java Stack.
Build your Android App with Gradle Android new build system.
Java Build Tool Comparison HJUG - April 29th, 2009 John Tyler.
Java development infrastructure at FMI Pekka Rantala FMI.
Programming Introduction November 9 Unit 7. What is Programming? Besides being a huge industry? Programming is the process used to write computer programs.
Introduction to Ant David Rabinowitz. March 3rd, 2004 Object Oriented Design Course 2 Ant Yet another build tool? Why do we need one where there are make,
Introduction to Android Studio
Introduction to Ant- a framework example Amit Shabtay.
Installing Tomcat on Windows  You may find the Tomcat install shield has some problems recognizing JSDK 1.4 beta installations.  You.
Continuous Integration after Hudson, CruiseControl, and Home Built Mile High Agile 2011 – Mark Waite.
2007 Adobe Systems Incorporated. All Rights Reserved. 1 Joe Berkovitz VP Engineering Allurent, Inc. Continuous Integration with Flex, FlexUnit, and Ant.
CHAPTER 4 SPRING FRAMEWORK Wattanapong suttapak, Software Engineering, school of Information communication Technology, university of phayao.
Chapter 3 Navigating a Project Goals & Objectives 1.Get familiar with the navigation of the project. How is everything structured? What settings can you.
Erlware For Managing Distribution and Build Erlang User Conference 2007.
Maven & Bamboo CONTINUOUS INTEGRATION. QA in a large organization In a large organization that manages over 100 applications and over 20 developers, implementing.
Sumedha Rubasinghe October,2009 Introduction to Programming Tools.
An intro to programming. The purpose of writing a program is to solve a problem or take advantage of an opportunity Consists of multiple steps:  Understanding.
Understanding Eclipse Development Environment Hen-I Yang July 7, 2006
Introduction to Android Android How to Program © by Pearson Education, Inc. All Rights Reserved.
Introduction to Android. Android as a system, is a java based operating system that runs on the Linux kernel. The system is very lightweight and full.
Application Servers: Tomcat. What is an application server? Servlets are Java’s answer to server-side programming. Servlets are a special type of Java.
COP 3330 Notes 1/12. Today's topics Downloading Java and Eclipse Hello World Basic control structures Basic I/O Strings.
Ch 1. A Python Q&A Session Spring Why do people use Python? Software quality Developer productivity Program portability Support libraries Component.
Copyright © 2015 Curt Hill Environment Establishing one for Minecraft Modding.
1 Rake. 2 Automated Build Any non-trivial project needs facility to automate builds –Routine common tasks that need to be carried out several times a.
A (very brief) intro to Eclipse Boyana Norris June 4, 2009.
Continuous Integration Mile High Agile 2012 – Mark Waite 3 April 2012.
Tool Install How to download & install Java 6 & Eclipse updated version based on Dr. G. L. Ray’s slides.
Java Programming, Second Edition Appendix A Working with Java SDK 1.4.
Chapter 1 Introducing Ant. What is ant? Ant is a build tool  Automate the tasks of compiling code, running test, and packaging the results for redistribution.
ANDROID APPLICATION DEVELOPMENT. ANDROID DEVELOPMENT DEVELOPER.ANDROID.COM/INDEX.HTML THE OFFICIAL SITE FOR ANDROID DEVELOPERS. PROVIDES THE ANDROID SDK.
Making Software Executable by Others Varun Ratnakar USC/ISI April 17, 2015
Build Systems Presentation December 14, 2015 Noon-1pm Kathy Lee Simunich Bldg. 203/ D120 Brought to you by: Argonne Java.
Lecture XIII: Continuous Integration CS 4593 Cloud-Oriented Big Data and Software Engineering.
Loader Tutorial Set Up. Requirements Java 7 Eclipse IvyIDE plugin Git Optional: Ant Maven.
® IBM Software Group © 2006 IBM Corporation Rational Asset Manager v7.2 Using Scripting Tutorial for using command line and scripting using Ant Tasks Carlos.
CPSC 372 John D. McGregor Module 6 Session 4 Sonar.
Maven. Introduction Using Maven (I) – Installing the Maven plugin for Eclipse – Creating a Maven Project – Building the Project Understanding the POM.
CERN IT Department CH-1211 Genève 23 Switzerland t Bamboo users meeting IT-CS-CT.
Required Tools Copyright © 2005 Liferay, LLC All Rights Reserved. No material may be reproduced electronically or in print without written permission from.
PhoneGap. web-based mobile development framework, based on the open-source Cordova project. use standard web technologies such as HTML5, CSS3, and JavaScript.
This material is based upon work supported by the U.S. Department of Energy Office of Science under Cooperative Agreement DE-SC , the State of Michigan.
當 Java 遇上 DevOps 黃忠成. Java In Azure Storage Table Storage Services NoSQL base storage Fast and Easy to use Blob Storage Services File Storage (photo,
Plan for today Open-Closed and Quizmaster
Build Fundamentals and Continuous Integration
Open-O Integration Project Introduction
Maven 04 March
Build Automation with Gradle
Modern “Servlet” Development
NAnt Build Tool CSE784 : ProjectCentralNet Prof : Dr. Jim Fawcett
Data Virtualization Demoette… JDBC Clients
A (very brief) intro to Eclipse
The GoogleMap API By Cody Littley.
Developing applications using Chromium
Opening Mini Baja Template
Ant.
JENKINS TIPS Ideas for making your life with Jenkins easier
Cordova & Cordova Plugin Installation and Management
Continuous Integration Tool
CS 240 – Advanced Programming Concepts
The Most Popular Android UI Automation Testing Tool Andrii Voitenko
Android Application Development
International Living Atlases Workshop Madrid 2018
Java Code Review with CheckStyle
Software Engineering and Architecture
Building LabKey with Gradle
Software Engineering and Architecture
Presentation transcript:

Zlatko Stamatov JavaSkop 13 December 2015 Intro to Gradle Zlatko Stamatov JavaSkop 13 December 2015

What is gradle? Yet another build tool? On a scale from ant to maven, gradle would be in the middle

How can I use it? Download gradle: http://gradle.org/gradle-download/ Unzip the downloaded file Add its bin directory to PATH Type “gradle”

Gradle tasks Type “gradle tasks”

Hello world from Gradle Create a build.gradle file Type “gradle helloWorld”

Task dependencies

Gradle domain-specific language (DSL) Groovy based Well documented https://docs.gradle.org/current/dsl/

Gradle Java plugin Gradle comes with built in java plugin The java plugin defines new tasks for building java projects It can be used with only one extra line in the build.gradle file

Building simple java application with gradle https://github.com/Zlate87/java-gradle-example

Dependencies

Gradle and Maven repo

Gradle and jenkins Jenkins gradle plugin is available https://wiki.jenkins-ci.org/display/JENKINS/Gradle+Plugin

Gradle and sonar

Gradle release Third party plugin: gradle-release [1] Provides similar experience as maven release process Simple to use Well documented Quite active on github [1] https://github.com/researchgate/gradle-release

Maven archetype equivalent? Sorry, but I have not found one Few alternatives: Build Init Plugin [1] gradle-templates [2] [1] https://docs.gradle.org/current/userguide/build_init_plugin.html [2] https://github.com/townsfolk/gradle-templates

Android ♥ Gradle Gradle is the default Android build tool Google provides few Gradle plugins for Android

Gradle wrapper Install gradle on your machine Execute gradle task called wrapper Commit the generated files for the wrapper To use the wrapper just type gradlew instead of gradle No need to manually install gradle on any other machine for this project

Creating Gradle plugin Can be done in java or groovy Define your own DSL extensions JUnit test it Build it and deploy it separately Reuse It over and over

Gradle user guide Contains 70 chapters Extensive list of examples https://docs.gradle.org/current/userguide/userguide.html

What to take from the presentation Gradle is here to stay It is easy to take it on a test drive It can probably do whatever you did with Maven, and much much more Is it for everyone? No!

?