๐ŸŒ AIๆœ็ดข & ไปฃ็† ไธป้กต
Skip to content

GitHub-workflow-APP/java-gradle-3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

25 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

gradle-multi-project-sample

sample repository to use gradle multi-project.

Overview

There are 3 sub pjojects.

  • common: utility library
  • base: base class or interface
  • app: application requires base or common
$ tree common/ base/ app/
common/
โ”œโ”€โ”€ build.gradle
โ””โ”€โ”€ src
    โ””โ”€โ”€ main
     ย ย  โ””โ”€โ”€ java
     ย ย   ย ย  โ””โ”€โ”€ common
     ย ย   ย ย      โ””โ”€โ”€ MyLibrary.java
base/
โ”œโ”€โ”€ build.gradle
โ””โ”€โ”€ src
    โ””โ”€โ”€ main
     ย ย  โ””โ”€โ”€ java
     ย ย      โ””โ”€โ”€ base
     ย ย          โ”œโ”€โ”€ MyBase.java
     ย ย          โ””โ”€โ”€ MyInterface.java
app/
โ”œโ”€โ”€ build.gradle
โ””โ”€โ”€ src
    โ””โ”€โ”€ main
        โ””โ”€โ”€ java
            โ””โ”€โ”€ app
                โ”œโ”€โ”€ Main.java
                โ””โ”€โ”€ MyApp.java

How to build

Build all sub projects.

$ ./gradlew build

Build common project only.

$ ./gradlew :common:build

Build a specific task in a sub project. For example app project has a task to build a Fat jar.

$ ./gradlew :app:customFatJar
$ java -jar app/build/libs/executable-1.0.jar
17:20:42.309 [main] INFO base.MyBase - called doSomeProcess in Base
17:20:42.310 [main] INFO common.MyLibrary - do some process
17:20:42.311 [main] INFO base.MyBase - log floor: 3
17:20:42.316 [main] INFO base.MyBase - f.getCumPct('Z'): 0.5

How to test

Run test for all sub projects.

$ ./gradlew --info cleanTest test

References

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published