添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

搜遍了谷歌还有相关Github Repo Issues都没有,
npm workspace的资料都不多,
有个别都是yarn workspace说什么安装依赖异常,
换成国内的淘宝源啊,来来去去都说什么源找不到,


一顿操作猛如虎,问题还是没有解决。
只能自己摸索了,我的解决姿势感觉应该是全网第一例!

  • Mac OS
  • Node 14.16.1
  • NPM 7.12.1
    • @sentry/cli 1.64.2

sentry-cli ENOENT

ERROR in Sentry CLI Plugin: spawn /workspace/project/node_modules/@sentry/cli/sentry-cli ENOENT

not installed by @sentry/cli

error: sentry-cli was not installed by @sentry/cli install script 

挣扎的姿势

.npmrc配置源

sentrycli_cdnurl=https://npm.taobao.org/mirrors/sentry-cli/

治标不治本,因为在单体模式下(非workspace)下,
走淘宝源安装是可以顺利且挺快的。。。
npm 7 workspace下还是找不到。
node_modules只装了一个残缺版本的@sentry/cli,
里面缺失sentry-cli这个(根据系统类型的二进制执行文件)。。

在主项目强装

# 就是清除缓存和强制安装,删除大法。。都试过。。
# 没啥用,
npm cache clean --force
rm -rf node_modules yarn.lock package-lock.json
npm install @sentry/cli  --force --legacy-peer-deps
# 为毛要--legacy-peer-deps
# 因为不是对等依赖的子包,常规的install会抛出如下异常
# ERESOLVE unable to resolve dependency tree

安装最新包

解决了这个问题,

error: sentry-cli was not installed by @sentry/cli install script 

最终解决(过渡方案)

我跑到node_modules/@sentry/cli区域,
发现他提供了安装脚本,顺势执行了一波。。

# exec
# 我发现里面的逻辑就是判定当前使用什么系统,下载对应的二进制
node ./node_modules/@sentry/cli/scripts/install.js
# 果然执行完毕。。sentry-cli回来了。。
./node_modules/.bin/sentry-cli --help
# 可以正常输出

每次手动执行去执行?NO,NO,NO。。。
生命宝贵,能自动化的还是自动化好


npm 提供了prepare的钩子,可以在install之后自动执行。
官方文档:
npm scripts -> Life Cycle Scripts

package.json

  "scripts": {
    "prepare": "husky install; node check-sentry.js",

check-sentry.js

最直接就是往项目根目录写一个js逻辑判定文件。。

* 1. 逻辑不复杂,就是执行部分shell去判定 * 2. 二进制执行凉凉进入catch逻辑 * 3. 走一遍安装逻辑(有缓存会直接命中,输出use cache ....) * 4. 最后就是输出版本号了。。 const { execSync } = require('child_process'); const { existsSync } = require('fs'); const { join } = require('path'); const basePath = process.cwd(); function getJoinPath(relativePath) { return join(basePath, relativePath); const sentryCliBinPath = getJoinPath('./node_modules/.bin/sentry-cli'); const nodeModulesSentryInstallPath = getJoinPath('./node_modules/@sentry/cli/scripts/install.js'); const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); const SLEEP_TIME = 10000; async function checkSentry() { const stdio = ['ignore', 'inherit', 'ignore']; if (existsSync(sentryCliBinPath)) { try { execSync(`${sentryCliBinPath} -V`, { stdio }); } catch (error) { if (existsSync(nodeModulesSentryInstallPath)) { execSync(`node ${nodeModulesSentryInstallPath}`); await sleep(SLEEP_TIME); execSync(`${sentryCliBinPath} -V`, { stdio }); checkSentry();

完结撒花,可以正常打包调用sentry上传sourcemap这些

有不对之处请留言,会及时修正,谢谢阅读!

前言搜遍了谷歌还有相关Github Repo Issues都没有,npm workspace的资料都不多,有个别都是yarn workspace说什么安装依赖异常,换成国内的淘宝源啊,来来去去都说什么源找不到,一顿操作猛如虎,问题还是没有解决。只能自己摸索了,我的解决姿势感觉应该是全网第一例!系统环境Mac OSNode 14.16.1NPM 7.12.1问题列表sentry-cli ENOENTERROR in Sentry CLI Plugin: spawn /workspace/
前提:nodeJs本地已安装。 1、执行npm install –global vue-cli ,全局安装vue-cli —-因为默认是从国外服务器下,可以使用阿里巴巴在国内的镜像服务器。 产生通过config命令设置默认下载路径: npm config set registry https://registry.npm.taobao.org 然后再执行npm install --global vue-cli 2、安装后,检查是否安装成功 vue -V (在此注意V为大写) 3、使用vue建一个项目名叫“my-project”(vue init webpack my-project
安装vue-cli的前提是你已经安装npm安装npm你可以直接下载node的安装包进行安装。你可以在命令行工具里输入npm -v 检测你是否安装npm和版本情况。出现版本号说明你已经安装npm和node,如果该命令不可用,需要安装node软件包,根据你的系统版本选择下载安装就可以了。 一、安装vue-cli 在命令行工具输入: npm install vue-cli -g -g:代表全局安装。用vue -V 来检查你安装版本号(-V,是大写的) 二、初始化项目 我们用vue init 命令来初始化项目: vue init <template> <project-nam
关于npm安装vue-cli错误问题 npm ERR! { Error: EPERM: operation not permitted, unlink ‘C:\Users\GXP300\AppData\Roaming\npm\node_modules.staging\typescript-886383bb\lib\tsserverlibrary.js’ npm ERR! errno: -4048, npm ERR! code: ‘EPERM’, npm ERR! syscall: ‘unlink’, 主要针对这类错误问题解决方法 另外,您还可以通过npm安装此二进制文件: npm install @sentry/cli 全局安装时,请确保设置了。 如果这在您的环境中是不可能的,或者仍然产生EACCESS错误,请以root用户身份安装: sudo npm install -g @sentry/cli --unsafe-perm 默认情况下,该软件包将从管理的CDN中下载sentry-cli。 要使用自定义CDN,请设置npm config属性sentrycli_cdnurl 。 下载器将附加"/<version>/sentry-cli-<dist>" 。 npm install @sentry/cli --sentrycli_cdnurl=https://mymirror.
npm-cli-login 允许您不使用STDIN,STDOUT登录到NPM。 在CI构建系统等地方使用。 还可以在〜/ .npmrc文件中创建/修改条目以进行身份​​验证。 npm install -g npm-cli-login 使用-g标志通过CLI使用npm-cli-login 命令行界面 npm-cli-login要求先设置以下环境变量,然后才能使用它进行身份验证: NPM_USER :NPM用户名 NPM_PASS :NPM密码 NPM_EMAIL :NPM电子邮件 NPM_REGISTRY :(可选)登录到专用NPM注册表(默认: : NPM_REGISTRY ) NPM_SCOPE :(可选)私有NPM范围 NPM_RC_PATH :(可选)要更新的自定义.npmrc文件的路径(默认: ~/.npmrc ) 设置所需的密码后,您只需运行以下命令即可登录
npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! @sentry/cli@1.72.0 install: `node scripts/install.js` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the @sentry/cli@1.72.0 install script. npm ERR! This is probably not a proble 就是说, vue有错误机制处理errorHandler(错误机制处理也有errorCaptured),而Sentry利用这个钩子函数提供了集成。 那接下来就是使用了, 首先我们点一下上图中的官方集成四个大字,来到了sentry官方文档(中关于VUE的文档):https://sentry.io/for/vue/。 Get Started! 一、手动下载 您可以在github发布页面上到发行版列表。我们为Linux,OS X和Windows提供可执行文件。这是单个文件下载,收到文件后,您可以将其重命名为sentry-clisentry-cli.exe以使用它。 二、自动安装 如果您使用的是OS X或Linux,则可以使用自动下载程序,它将为您获取最新版本并安装它:... 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For React 完整接入详解 Sentry For Vue 完整接入详解 公众号:黑客下午茶 根据... #if __has_include(&lt;React/RNSentry.h&gt;) #import &lt;React/RNSentry.h&gt; // This is used for versions of react &gt;= 0.40 #else #import "... Docker搭建项目的文档:https://docs.sentry.io/server/installation/docker/ Python搭建项目的文档:https://docs.sentry.io/server/installation/python/ 但是这两种有时候不好用。可以参考下,下面的教程实用一点。 看到网上好多教程都是说搭建的,很少讲使用的。首先我要跟你们ga...
# genmuluchuangjian .yarnrc /www/wwwroot # vi .yarnrc registry: https://registry.npm.taobao.org ENTRYCLI_CDNURL: https://cdn.npm.taobao.org/dist/sentry-cli sentrycli_cdnurl: https://cdn.npm.taobao.org/dist/sentry-cli /www/wwwroot # yarn config list yarn c
提起 npm,大家第一个想到的应该就是 npm install 了,但是 npm install 之后生成的 node_modules 大家有观察过吗?package-lock.json 文件的作用大家知道吗?除了 dependencies 和 devDependencies,其他的依赖有什么作用呢?接下来,本文将针对 npm 中的你可能忽略的细节和大家分享一些经验。 npm 安装机制 A 和 B 同时依赖 C,C 这个包会被安装在哪里呢?C 的版本相同和版本不同时安装会有什么差异呢?packa 接收藏里面的文章,试验数据 https://blog.csdn.net/ros_donggua/article/details/81024658 这篇文章介绍了sentry安装全部流程 在我试验的过程中遇到了一下几点: 首先在,选择版本的过程中,只需要选择第二行的版本号就行了,要是把包名则选择上就会报错 ###在构建容器中遇到的麻烦: 按照文章提示构造容器,但是会出现...
对于某些操作,您可以使用sentry-cli命令行可执行文件。它可以连接到Sentry API并管理项目的一些数据。它主要用于管理iOS,Android的调试信息文件以及其他平台的发布和sourcemap管理。 后续文章详细介绍Sentry命令行工具安装、配置、使用等操作。...
如果您在执行 "npm install -g vue-cli" 命令时遇到了错误,可能是由于以下原因之一: 1. 您的计算机上未安装 Node.js。请先安装 Node.js,然后再尝试运行此命令。 2. 您正在使用的是较旧的 Node.js 版本。请升级到最新版本的 Node.js。 3. 您的网络连接可能有问题。请确保您的网络连接正常,并再次尝试运行此命令。 4. 您可能没有足够的权限来安装全局模块。如果您正在使用 Windows,请使用管理员权限运行命令提示符。如果您正在使用 macOS 或 Linux,请使用 sudo 命令来运行此命令。 如果以上方法均无法解决问题,请提供更多信息,例如错误消息或其他细节,以便我能够更好地帮助您解决问题。