我正在与参与ferdi项目的程序员合作。
https://getferdi.com/
ferdi的座右铭是:“在一个地方提供所有的信息服务”。事实上,它就像franz一样,可以在很多操作系统上工作,比如MacOSM1、windows、ubuntu x64位。我们正在努力使它在arm64/jetson nano/tegra上也能工作。不幸的是,在这个操作系统上,它不能正常工作,因为我们有一个无法修复的javascript错误。这就是如何复制它:
[ `root@zi-desktop` ](mailto:root@zi-desktop) `:~/Desktop/zi/Work/I9/Virt/dockers/arm64/ferdi2# ferdi`
`[21980:0709/185715.104381:FATAL:electron_main_delegate.cc(252)] Running as root without --no-sandbox is not supported. See` [ `https://crbug.com/638180` ](https://crbug.com/638180) `.Trace/breakpoint trap`
[ `root@zi-desktop` ](mailto:root@zi-desktop) `:~/Desktop/zi/Work/I9/Virt/dockers/arm64/ferdi2# ferdi --no-sandbox`
`A JavaScript error occurred in the main processUncaught Exception:Error: Cannot find module` [ `'/opt/Ferdi/resources/app.asar/node_modules/@meetfranz` ](mailto:'/opt/Ferdi/resources/app.asar/node_modules/@meetfranz) `/theme/lib/index.js'.
Please verify that the package.json has a valid "main" entryat
tryPackage (internal/modules/cjs/loader.js:310:19)at
Function.Module._findPath (internal/modules/cjs/loader.js:523:18)at
Module._resolveFilename (internal/modules/cjs/loader.js:874:27)at
Function.n._resolveFilename (electron/js2c/browser_init.js:257:1128)at
Module._load (internal/modules/cjs/loader.js:732:27)at Function.f._load
(electron/js2c/asar_bundle.js:5:12913)`
(以普通用户的身份运行会产生相同的错误)
基本上,我们使用这样的docker容器来生成我们将安装在操作系统上的deb包。下面您可以看到arm64/tegra/jetson nano的dockerfile:
`FROM node:fermium-buster`
`LABEL Author="ZioMario <` [ `marietto2008@gmail.com` ](mailto:marietto2008@gmail.com) `>"`
`LABEL Title="arm64/ferdi"`
`# Enviorment variables`
`#ARG username=ferdi-arm64-builder`
`#ENV HOME /home/$username`
`ENV DEBIAN_FRONTEND=noninteractive`
`ENV LC_ALL=C.UTF-8`
`ENV LANG=C.UTF-8`
`ENV PATH="/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/local/lib:/usr/include:/usr/share"`
`#ENV HW="GPU"`
`#ENV TERM xterm`
`ENV USE_SYSTEM_FPM=true`
`ENV PREVAL_BUILD_INFO_PLACEHOLDERS=true`
`#RUN apt-get update && apt-get install -y ca-certificates curl netbase wget tzdata rpm git xz-utils nano gedit ruby gem`
`RUN apt-get update && apt install -y rpm ruby gem && gem install fpm --no-ri --no-rdoc --no-document`
`WORKDIR /ferdi`
`RUN git clone` [ `https://github.com/getferdi/ferdi.git` ](https://github.com/getferdi/ferdi.git) `. && git submodule update --init --recursive`
`RUN npx lerna bootstrap`
`RUN cd recipes && npm i && npm run package`
`RUN npm run build`
它在任何地方都能工作,除了jetson nano。你对如何修复它有什么想法吗?谢谢
1条答案
按热度按时间rseugnpd1#
在这些情况下,通常尝试删除
package-lock.json
及node_modules
,然后试着跑npm install
再一次。另外,看起来您的问题与
"main"
支持package.json
. a的主要性质package.json
是指向该模块入口点的方向package.json
他正在描述。例如,在node.js应用程序中,当通过required语句调用模块时,模块从main属性中命名的文件导出的内容将返回到node.js应用程序。