Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sonatype-nexus-community/copy-modules-webpack-plugin
A Webpack plugin which copies module sources to a separate directory
https://github.com/sonatype-nexus-community/copy-modules-webpack-plugin
nexus-iq webpack-plugin
Last synced: about 1 month ago
JSON representation
A Webpack plugin which copies module sources to a separate directory
- Host: GitHub
- URL: https://github.com/sonatype-nexus-community/copy-modules-webpack-plugin
- Owner: sonatype-nexus-community
- License: apache-2.0
- Created: 2017-11-16T18:15:48.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2022-08-18T13:06:06.000Z (over 2 years ago)
- Last Synced: 2024-11-28T12:02:28.105Z (about 1 month ago)
- Topics: nexus-iq, webpack-plugin
- Language: JavaScript
- Homepage:
- Size: 954 KB
- Stars: 18
- Watchers: 8
- Forks: 7
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE.txt
- Security: SECURITY.md
Awesome Lists containing this project
README
# Copy Modules Plugin
# Table Of Contents
* [Introduction](#introduction)
* [Installation](#installation)
* [Usage](#usage)
* [Configuration](#configuration)
* [The Fine Print](#the-fine-print)
* [Getting help](#getting-help)## Introduction
`copy-modules-webpack-plugin` is a Webpack plugin which copies all of the source files which go into the webpack
bundle(s) to a separate directory. This enables external tools such as Sonatype Nexus Lifecycle to analyze only those
source files which will be included in the final bundle.### N.B. Since version 2.0 the plugin is only compatible with webpack 4.0 and later. Use 1.x releases for webpack 3.
## Installation
```
npm install --save-dev copy-modules-webpack-plugin
```## Usage
Instantiate the plugin with the desired configuration options and include it in the `plugins` array of your webpack configuration:
```js
const CopyModulesPlugin = require("copy-modules-webpack-plugin");module.exports = {
...
plugins: [
new CopyModulesPlugin({
destination: 'webpack-modules'
})
]
}
```### Configuration
`copy-modules-webpack-plugin` currently supports the following configuration options:
- destination
-
The destination directory where the modules will be copied.
- includePackageJsons
-
When using Webpack 4, set this to true to also copy the package.json file associated with each copied module
file. This may be useful if you are analyzing the output with a tool that has need for additional metadata about
each module (Default: false).
Note: when using webpack 5, the package.json files are copied regardless of the value of this flag.
## The Fine Print
It is worth noting that this is **NOT SUPPORTED** by Sonatype, and is a contribution of ours
to the open source community (read: you!)
Remember:
* Use this contribution at the risk tolerance that you have
* Do NOT file Sonatype support tickets related to Webpack support
* DO file issues here on GitHub, so that the community can pitch in
Phew, that was easier than I thought. Last but not least of all:
Have fun creating and using this plugin, we are glad to have you here!
## Getting help
Looking to contribute to our code but need some help? There's a few ways to get information:
* Chat with us on [Gitter](https://gitter.im/sonatype/nexus-developers)
* Connect with [@sonatypeDev](https://twitter.com/sonatypedev) on Twitter