Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–223 runs
build_error
glibcnode 18–223 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
VitePluginCopy
✓ import { VitePluginCopy } from 'vite-plugin-copy2'
✗ const VitePluginCopy = require('vite-plugin-copy2')
The package is ESM-only; CommonJS require is not supported. Must use ES import.
default import
✓ import { VitePluginCopy } from 'vite-plugin-copy2'
✗ import VitePluginCopy from 'vite-plugin-copy2'
The package does not have a default export; only named export VitePluginCopy is available.
TypeScript
✓ import { VitePluginCopy } from 'vite-plugin-copy2'
TypeScript types are included. No separate @types package needed.
Shows how to configure the plugin in a Vite config file to copy multiple files and folders during the build.
// vite.config.ts
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { VitePluginCopy } from 'vite-plugin-copy2'
export default defineConfig({
plugins: [
vue(),
VitePluginCopy([
{ src: ['demo/a.js', 'demo/b.js'], dest: 'dist/' },
{ src: 'demo/c.js', dest: 'dist/static/' },
{ src: 'node_modules', dest: 'dist/node_modules' }
])
]
})
Errors
Common errors & fixes
Error: Cannot find module 'vite-plugin-copy2'
Package not installed or not listed in devDependencies.
fixRun 'npm install vite-plugin-copy2 -D' or 'yarn add vite-plugin-copy2 -D'.
TypeError: VitePluginCopy is not a function
Using default import instead of named import.
fixUse 'import { VitePluginCopy } from 'vite-plugin-copy2'' instead of 'import VitePluginCopy from ...'. Error: The plugin only works in build mode. Skipping during dev.
Expected behavior: plugin is only active during build.
fixThis is not an error; if you need file copying during dev, use a different approach or configure separate dev copy logic.
Error: ENOENT: no such file or directory, stat 'path/to/source'
The source file or folder specified in the config does not exist.
fixVerify that all source paths are correct and exist. Use absolute or correct relative paths.
Error: The 'dest' option must be a string
dest field missing or not a string in one of the copy entries.
fixEnsure each copy entry has a 'dest' property that is a string.
Audit
Dependencies
viterequiredThe plugin is designed to be used as a Vite plugin and requires Vite as a peer dependency.