问题
I'm trying to publish my NPM package: npm publish
.
I get the following quite cryptic error:
npm ERR! path c:\Temp\npm-20936-b98f84c8\tmp\fromDir-02dd5394\package.tgz
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall unlink
npm ERR! Error: EPERM: operation not permitted, unlink 'c:\Temp\npm-20936-b98f84c8\tmp\fromDir-02dd5394\package.tgz'
npm ERR! at Error (native)
npm ERR! { Error: EPERM: operation not permitted, unlink 'c:\Temp\npm-20936-b98f84c8\tmp\fromDir-02dd5394\package.tgz'
npm ERR! at Error (native)
npm ERR! cause:
npm ERR! { Error: EPERM: operation not permitted, unlink 'c:\Temp\npm-20936-b98f84c8\tmp\fromDir-02dd5394\package.tgz'
npm ERR! at Error (native)
npm ERR! errno: -4048,
npm ERR! code: 'EPERM',
npm ERR! syscall: 'unlink',
npm ERR! path: 'c:\\Temp\\npm-20936-b98f84c8\\tmp\\fromDir-02dd5394\\package.tgz' },
npm ERR! isOperational: true,
npm ERR! stack: 'Error: EPERM: operation not permitted, unlink \'c:\\Temp\\npm-20936-b98f84c8\\tmp\\fromDir-02dd5394\\package.tgz\'\n at Error (native)',
npm ERR! errno: -4048,
npm ERR! code: 'EPERM',
npm ERR! syscall: 'unlink',
npm ERR! path: 'c:\\Temp\\npm-20936-b98f84c8\\tmp\\fromDir-02dd5394\\package.tgz' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
Tried running as admin - same error.
NPM version: 5.4.0
Node version: 6.11.1
OS: Windows 10
Any leads?
回答1:
Silly me. The answer was in the docs all along.
In order to publish you need to be logged in from your NPM.
So either do npm login
if you already have a user on npmjs.com, or npm adduser
to create one.
I would, however, appreciate a more informative error message.
回答2:
I had the same problem on Windows.
The source of the problem is simple, it is access permission on folders and files. Click here
回答3:
Here is my experience.
I was working on Atom, and did file drag drop on Atom, it cause error.
So I exit atom on Win10 and run npm i
again. It was successful.
Please turn off your editor or explorer which can restrict your project files and try again.
回答4:
I changed to the new filesystem by remounting my windows drives. After that no problems anymore. Refer to the following link.
回答5:
In some cases it is a matter of pointing to the correct package.json
file. Had omitted the param in the before, causing the error.
Before: npm publish
After: npm publish C:\Code\my-proj\dist\@acme\my-package
来源:https://stackoverflow.com/questions/46090032/npm-publish-causes-error-eperm-operation-not-permitted-unlink-errno-4