> For the complete documentation index, see [llms.txt](https://yutakatay.gitbook.io/katapedia/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://yutakatay.gitbook.io/katapedia/doc/gradle.md).

# Gradle

## 基本操作

### タスク一覧確認

`gradle -q task --all`

### コンポーネントのタイプとかを表示

`gradle components`

## FAQ

### withTypeのタイプを見たい

`gradle help --task junitPlatformTest`

### C/C++でアウトプットされるバイナリ名を動的に変更したい

```groovy
    new File('src/main/c/').eachDir() {
        "${it.name}"(NativeExecutableSpec) {
            sources {
                c {
                    source {
                        srcDirs "src/main/c/${it.name}"
                        include "**/*.c"
                        lib library: "Aaa"
                        lib library: "Bbb"
                    }
                    exportedHeaders { srcDirs "src/main/c/include" }
                    exportedHeaders { srcDirs "src/main/c/include" }
                }
            }
        }
    }
```
