Gradle for java developers

بواسطة: Udemy

Overview

Master the fundamentals of gradle in easy steps

What you'll learn:
  • Understand what Gradle is and why it is so popular
  • You will create a Standalone Java Project using Gradle command line
  • Compare gradle settings gradle with Maven pom xml
  • Quickly learn groovy to understand the Gradle build scripts
  • Understand the anatomy of a Gradle build file
  • Create a Java Web Application
  • Use the War and Gretty plugins to build and run your web application
  • Create Custom Gradle tasks
  • Create Multi Module Projects
  • Learn how to add dependencies between modules
  • Learn how to manage common logic and dependencies for all the modules
  • Write and run unit tests using JUnit and Mockito
  • Generate Test Coverage reports configuring the JACOCO code coverage plugin
  • Configure SonarQube plugin to run static code analysis
  • Create a Spring Boot Project using Gradle
  • Migrate Spring Boot Maven projects to use Gradle
  • Understand the build gradle file of the spring boot project, build and run it
  • Create Custom Gradle Plugins

Sample Reviews:

This was an exceptionally good course! I found what I needed in the first 45 minutes, and I watched the rest just to make sure I had full coverage. I feel like I am completely competent in Gradle, andI have already converted 3 of my projects to use Gradle, and it is all working surprisingly well. Good job! -- Keith Swenson

Course is certainly very informative and the fundamentals are well explained with real world examples. Especially multi module gradle concepts and custom plugins adds, because they are very much useful for a IT developer. Lecturer voice is clear and intense. Thank you very much
-- Sunil Kumar

I was waiting for Bharath's course on Gradle and when it came out, I purchased it instantly. I did not even hesitate once before buying it since I already know that this course will be as good as his other courses. I recently joined a company and there we are working on a big project which has so many configurations and it was build using Gradle and I was having trouble understanding them. I googled and read some online blogs, watched some youtube videos but still many things were not clear to me so when his course came on Gradle I was overjoyed. His explanation is so simple, precise, short and to the point -- Saurav


Are you a Java or Spring Boot developer who wants to master Gradle then this course is for you.Are you a developer with Maven background who wants to quickly learn Gradle then this course is for you as well.

Gradle is one of the most popular build automation tools in the java world.In this course you will master all the core concepts of Gradle while working hands on to createa various javaproject.In this course you will

  • Understand what Gradle is and why it is so popular

  • You will create a Standalone Java Project using Gradle command line

  • Compare gradle settings.gradle with Maven pom.xml

  • Quickly learn groovy to understand the Gradle build scripts

  • Understandthe anatomy of a Gradle build file

  • Create a Java Web Application

  • Use the War and Gretty plugins to build and run your web application

  • Create Custom Gradle tasks

  • Create Multi Module Projects

  • Learn how to add dependencies between modules

  • Learn how to manage common logic and dependencies for all the modules

  • Write and run unit tests using JUnit and Mockito

  • Generate Test Coverage reports configuring the JACOCO code coverage plugin

  • Configure SonarQube plugin to run static code analysis

  • Create a SpringBoot Project using Gradle

  • Migrate Spring Boot Maven projects to use Gradle

  • Understand the build.gradle file of the spring boot project, build and run it

  • Create Custom Gradle Plugins

What are the requirements?

  • Gradle, Spring ToolSuite (Installation is covered)

  • A basic understanding of Java and JavaWeb Development

What am I going to get from this course?

  • Apply your understanding of Gradleand your ability to build a project using Gradle

  • Create and build a java web application using Gradle

  • Master all the important concepts of Gradle while working hands on

  • Learn how to create and build Spring Boot Projects using Gradle

Taught by

Bharath Thippireddy

Gradle for java developers
الذهاب الي الدورة

Gradle for java developers

بواسطة: Udemy

  • Udemy
  • مدفوعة
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • beginner
  • English
8.1.2PHP Version795msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (507ms)
    • Application (286ms)
    • 1 x Booting (63.73%)
      506.81ms
      1 x Application (36.03%)
      286.48ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      6 statements were executed16.49ms
      • select * from `courses` where `slug_ar` = 'gradle-for-java-developers' limit 1
        15.08ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. gradle-for-java-developers
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-07-25 02:57:38' where `id` = 6936
        550μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-07-25 02:57:38
        • 1. 6936
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (197)
        210μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        180μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (51) and `providers`.`deleted_at` is null
        220μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 6927 limit 1
        250μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 6927
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        tyCxWZHWjodB4CKrWwNXyvP1xrLwqOnUifElQVGz
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/gradle...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/gradle-for-java-developers
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "216.73.216.81" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.81" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "96486413d807ab3d-YYZ" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "216.73.216.81" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.81" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "96486413d807ab3d-YYZ" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "10322" "REMOTE_ADDR" => "108.162.241.46" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/gradle-for-java-developers" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1753412258.1309 "REQUEST_TIME" => 1753412258 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Fri, 25 Jul 2025 02:57:38 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IldQbkp0ek40S1ZzK2JDQWpRa3k2TUE9PSIsInZhbHVlIjoiQytMc3JuTzRCbEFDZ2hkc1dPUGhsd29LVXNmbEFxdFVpOGk0Uk5NdkNYS0lVLzltRXg3T0Q2eW1HUnBaK0g0QkxiYm40N291ZVlQK1pLbkRXQzMycDdiY3J1U0pQMytYNFBsdE5LK3F2MkR2ZlJzdGJ1M1BBdFNYdUFaUGNCaHMiLCJtYWMiOiIyMDBmOTc3ZTU0MTUzNDU0MTM3YTE1ZTgyNzlkOWJkN2I5ZjJjOGExZDQyNmExMjJhOWM5MGEzMDNiZjVjZTJjIiwidGFnIjoiIn0%3D; expires=Fri, 25 Jul 2025 04:57:38 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IldQbkp0ek40S1ZzK2JDQWpRa3k2TUE9PSIsInZhbHVlIjoiQytMc3JuTzRCbEFDZ2hkc1dPUGhsd29LVXNmbEFxdFVpOGk0Uk5NdkNYS0lVLzltRXg3T0Q2eW1HUnBaK0g0QkxiYm40N" 1 => "laravel_session=eyJpdiI6ImV5bHVFRXNQMW9FZVVBL3l0bWMvU2c9PSIsInZhbHVlIjoiRnB0bTByWjRlL2tyWk5KdExJT244ZDB6MXFQVFhpQWpqUUlDUnVNSmVNMEo5QzZYd3JwSWpRYXl2bUQzaUZBd1BLSkFqVGJyMVBLaDBlbXA5QWFORnhJQUppZ0hyM2ZNT0ozb0U5UDVucTZxSWtDWDZ5U2hOSVQwV3VUSDAraHAiLCJtYWMiOiJmMGU5Y2QyYTE3NWIzMDFmZTgyNzczZDJhYmI1Yzk0MmM1MzIwYmZhZGZmM2NjMTdmM2U4MDc4ZDFiMzViYzhiIiwidGFnIjoiIn0%3D; expires=Fri, 25 Jul 2025 04:57:38 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6ImV5bHVFRXNQMW9FZVVBL3l0bWMvU2c9PSIsInZhbHVlIjoiRnB0bTByWjRlL2tyWk5KdExJT244ZDB6MXFQVFhpQWpqUUlDUnVNSmVNMEo5QzZYd3JwSWpRYXl2bUQzaUZBd1BL" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IldQbkp0ek40S1ZzK2JDQWpRa3k2TUE9PSIsInZhbHVlIjoiQytMc3JuTzRCbEFDZ2hkc1dPUGhsd29LVXNmbEFxdFVpOGk0Uk5NdkNYS0lVLzltRXg3T0Q2eW1HUnBaK0g0QkxiYm40N291ZVlQK1pLbkRXQzMycDdiY3J1U0pQMytYNFBsdE5LK3F2MkR2ZlJzdGJ1M1BBdFNYdUFaUGNCaHMiLCJtYWMiOiIyMDBmOTc3ZTU0MTUzNDU0MTM3YTE1ZTgyNzlkOWJkN2I5ZjJjOGExZDQyNmExMjJhOWM5MGEzMDNiZjVjZTJjIiwidGFnIjoiIn0%3D; expires=Fri, 25-Jul-2025 04:57:38 GMT; path=/XSRF-TOKEN=eyJpdiI6IldQbkp0ek40S1ZzK2JDQWpRa3k2TUE9PSIsInZhbHVlIjoiQytMc3JuTzRCbEFDZ2hkc1dPUGhsd29LVXNmbEFxdFVpOGk0Uk5NdkNYS0lVLzltRXg3T0Q2eW1HUnBaK0g0QkxiYm40N" 1 => "laravel_session=eyJpdiI6ImV5bHVFRXNQMW9FZVVBL3l0bWMvU2c9PSIsInZhbHVlIjoiRnB0bTByWjRlL2tyWk5KdExJT244ZDB6MXFQVFhpQWpqUUlDUnVNSmVNMEo5QzZYd3JwSWpRYXl2bUQzaUZBd1BLSkFqVGJyMVBLaDBlbXA5QWFORnhJQUppZ0hyM2ZNT0ozb0U5UDVucTZxSWtDWDZ5U2hOSVQwV3VUSDAraHAiLCJtYWMiOiJmMGU5Y2QyYTE3NWIzMDFmZTgyNzczZDJhYmI1Yzk0MmM1MzIwYmZhZGZmM2NjMTdmM2U4MDc4ZDFiMzViYzhiIiwidGFnIjoiIn0%3D; expires=Fri, 25-Jul-2025 04:57:38 GMT; path=/; httponlylaravel_session=eyJpdiI6ImV5bHVFRXNQMW9FZVVBL3l0bWMvU2c9PSIsInZhbHVlIjoiRnB0bTByWjRlL2tyWk5KdExJT244ZDB6MXFQVFhpQWpqUUlDUnVNSmVNMEo5QzZYd3JwSWpRYXl2bUQzaUZBd1BL" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "tyCxWZHWjodB4CKrWwNXyvP1xrLwqOnUifElQVGz" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/gradle-for-java-developers" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]