# 빌드 결과 자동 정리

## 빌드 자동 정리 플러그인 <a href="#build-automatic-cleanup-plug-in" id="build-automatic-cleanup-plug-in"></a>

CleanWebpackPlugin 플러그인은 Webpack에 의해 빌드(컴파일, 트랜스폼, 번들링 등) 된 결과물을 정리합니다. [clean-webpack-plugin](https://www.npmjs.com/package/clean-webpack-plugin) 패키지를 프로젝트에 설치한 후, Webpack 구성 파일을 열어 플러그인을 설정합니다.

{% tabs %}
{% tab title="패키지 설치" %}

```bash
npm i clean-webpack-plugin -D
```

{% endtab %}

{% tab title="webpack.config.js" %}

```javascript
const { CleanWebpackPlugin } = require('clean-webpack-plugin')

module.exports = {
  // 플러그인 설정
  plugins: [
    // 플러그인 인스턴스 생성
    new CleanWebpackPlugin({
      // 플러그인 옵션 셜정
      // dry 기본 값: false
      dry: true,
      // verbose 기본 값: false
      verbose: true,
      // cleanOnceBeforeBuildPatterns 기본 값: ['**/*']
      cleanOnceBeforeBuildPatterns: [
        '**/*',
        // build 폴더 안의 모든 것을 지우도록 설정
        path.resolve(process.cwd(), 'build/**/*')
      ]
    })
  ]
}
```

{% endtab %}
{% endtabs %}

[빌드 명령](https://yamoo9.gitbook.io/webpack/webpack/manage-env-variables#build)으로 빌드 된 결과물이 출력된 화면입니다.

![](https://1127883942-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MTbexhuB2p5ev8QaGgg%2F-MTnyKYLcNfNMkqu_VS3%2F-MTo1KkpHk07dJ19wbT_%2Fimage.png?alt=media\&token=6ce8f4f1-312f-48ac-a544-c1028cae9105)

[번들 명령](https://yamoo9.gitbook.io/webpack/webpack/manage-env-variables#bundle)을 이어서 수행하면, CleanWebpackPlugin에 의해 빌드 된 결과물이 모두 정리된 후 번들 결과물만 남습니다.

![](https://1127883942-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MTbexhuB2p5ev8QaGgg%2F-MTnyKYLcNfNMkqu_VS3%2F-MTo1WtWLhST6qsVF1lw%2Fimage.png?alt=media\&token=e5634b95-fac8-4213-bf01-6be446bd2989)

## 참고 <a href="#reference" id="reference"></a>

{% embed url="<https://www.npmjs.com/package/clean-webpack-plugin>" %}
