Package.jsonファイルにgitの依存関係があります。反応アプリフォルダーでSudo npm installを実行すると、このエラーが発生します
npm ERR! code 1
npm ERR! Command failed: /usr/bin/git clone --depth=1 -q -b master
https://github.com/lrojas94/react-file-base64.git /home/admin1/.npm/_cacache/tmp/git-clone-462782fb
npm ERR! /home/admin1/.npm/_cacache/tmp/git-clone-462782fb/.git: Permission denied
npm ERR!
npm ERR! A complete log of this run can be found in:
npm ERR! /home/admin1/.npm/_logs/2017-07-18T08_58_10_906Z-debug.log
admin1@ubuntu:~/hys_pms/ui$ Nohup: appending output to ‘Nohup.out’
これは私のpackage.jsonです
{
"name": "react-hys-app",
"version": "0.1.0",
"private": true,
"dependencies": {
"annogenerate": "^0.8.1",
"bootstrap": "^3.3.7",
"cors-prefetch-middleware": "^1.0.0",
"es6-promise": "^4.1.0",
"express": "^4.15.3",
"fixed-data-table": "^0.6.4",
"flexbox-react": "^4.4.0",
"font-awesome": "^4.7.0",
"images-upload-middleware": "^1.1.1",
"isomorphic-fetch": "^2.2.1",
"jquery": "^3.2.1",
"react": "^15.3.1",
"react-autosuggest": "^9.0.1",
"react-avatar-cropper": "^0.1.3",
"react-bootstrap": "^0.30.8",
"react-bootstrap-autosuggest": "^0.5.0",
"react-bootstrap-date-picker": "^5.0.1",
"react-bootstrap-table": "^3.3.1",
"react-checkbox-list": "0.0.2",
"react-datepicker": "^0.51.0",
"react-datetime": "^2.8.10",
"react-dom": "^15.4.0",
"react-dual-listbox": "^1.1.0",
"react-edit": "^6.3.0",
"react-file-base64": "git+https://github.com/lrojas94/react-file-base64.git",
"react-flexbox-grid": "^1.1.3",
"react-grid-layout": "^0.14.6",
"react-images-uploader": "^1.0.1",
"react-pagify": "^2.2.0",
"react-panelgroup": "^1.0.2",
"react-radio-button-group": "^1.2.5",
"react-redux": "^5.0.4",
"react-router": "^2.7.0",
"react-s-alert": "^1.3.0",
"react-select": "^1.0.0-rc.5",
"react-visibility-toggles": "^1.1.1",
"reactabular-resizable": "^8.9.0",
"reactabular-table": "^8.9.0",
"recompose": "^0.23.5",
"redux": "^3.6.0",
"redux-devtools-extension": "^2.13.0",
"redux-thunk": "^2.2.0",
"redux-undo": "^1.0.0-beta9-9-1",
"reflexbox": "^3.0.0-0",
"schema2object": "^0.4.0",
"searchtabular": "^1.5.0",
"segmentize": "^0.4.1",
"sortabular": "^1.4.0",
"table-resolver": "^3.1.0"
},
"devDependencies": {
"css-loader": "^0.28.4",
"react-scripts": "0.9.5",
"style-loader": "^0.18.2"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
}
Package.jsonのこの行が問題になります。
私はこの問題に悩まされています。親切に助けてください。
NodeJS 6.10から8.10(さらに重要なことにNPM 5.6.0)にアップグレードした後、(gitリポジトリからではなく)chimpをインストールしたときにこれとまったく同じエラーが発生しました。問題は、npm5がnpm4とは非常に異なる方法でアクセス許可/ディレクトリを処理することです。
解決策は、npm5の実行時にSudoを使用しないことです。npm4で使用する必要がある場合がありますが、npm5でSudoを使用する必要はありません。グローバルにインストールする場合は- このリンク あなたを助けるかもしれません。それは私を助けませんでした。
Dockerコンテナー内にいたので、Sudoを使用しないようにDockerファイルを変更するだけで、すべて問題ありませんでした。そうでない場合は、(rootではなく)ユーザーとして以下を実行することをお勧めします。
cd ~
Sudo rm -rf .npm
cd <wherever your package.json/node_modules is>
npm cache clean
rm -rf node_modules
npm install
あなたの問題が解決したかどうかはわかりません。今日、私は同じ問題に直面しました。問題は〜/ .npmフォルダーがパーミッションで混乱しているため、パーミッションをSudo chown -R $(whoami) ~/.npm
に変更し、正常に動作しています。
これは適切な修正ではありません(DO N'T DO IT)が、私にとってはうまくいきました。スーパーユーザーモードに移動してから、npm install
とSudo
。
Sudo su
Sudo npm install