1

当我为我的 React Native 项目运行我的 Jenkins 构建时,它失败并出现以下错误:

Unable to resolve module `reactotron-core-client` from `/Users/nfib/Jenkins/Jenkins-Workspaces/ENGA/ENGAL/node_modules/reactotron-redux/dist/index.js`: Module does not exist in the module map

Execution failed for task ':app:bundleDevReleaseJsAndAssets'.

我遵循了建议rm -rf node_modules && npm install,但我不确定这是否会有所帮助,因为在我看来,它似乎是 npm 团队的通用解决方案。

React-Native 版本:0.53.3 与"reactotron-react-native": "3.5.0", "reactotron-redux": "3.1.0",

有没有人遇到过类似的问题?我怎样才能确保这种情况不会继续发生?

4

1 回答 1

0

问题是您的Jenkins构建服务器无法找到reactotron-core-client完成Jenkins构建所需的模块。您可以从堆栈跟踪中看到这一点:

无法解析模块reactotron-core-client

npm团队推荐的解决方案:

rm -rf node_modules && npm install

是一个通用解决方案,因为此命令将删除您以前node_modules包含项目依赖项的目录,然后在项目package.json文件中重新安装列出的依赖项。npm如果已在构建服务器上更新,这可能会解决源自锁定文件的问题以及版本控制问题。

package.json如果您的文件中列出了所有项目所需的库,则此解决方案可能会解决您的问题。但是,如果该reactotron-core-client库未在您的文件中列为必需的依赖项,则package.json此问题将继续存在。也许您可以尝试以下方法:

npm i --save reactotron-core-client

因为这将为您的项目保存并安装reactotron-core-client依赖项。通过保存,我的意思是将此库列为package.json文件中的依赖项。

理想情况下,最好的办法是让文件与项目的依赖项保持同步,并在尝试构建package.json之前安装依赖项。Jenkins

希望这会有所帮助!

于 2019-05-28T15:31:20.397 回答