导航:首页 > 操作系统 > electronlinux

electronlinux

发布时间:2022-08-07 19:17:08

A. electron 打包总是报 版本错误

前言:研究electron自动更新的时候,在electron的官方文档auto-updater 中,提到了在几个平台mac,linux,windows下electron 的自动更新方法,其中windsow平台上面,文章中建议先用grunt-electron-installer 模块来创建windows安装包,grunt这个工具是由Squirrel集成的。进而了解下Squirrel这个工具,
一个可以用来给electron应用的安装更新卸载添加快捷方式的工具。本文主要提及如何在windows平台下,用Squirrel创建electron的.exe安装包。

创建nuget包

我们的方法是使用nuget工具创建Nuget包,再使用Squirrel工具创建.exe。

1.下载squirrel.exe和nuget.exe,也可以选择直接安装Squirrel.Windows (需要有vitual
studio环境)。

2.新建文件夹如my-build,把下载好的squirrel.exe,nuget.exe和setup.exe

放进去,在文件夹放入我们未打包的electron应用,如下图:

4.在my-build根目录中,打开命令行执行nuget spec

如下图:

生成 spec包初始文件

5.编辑器打开 Package.nuspec,按照自己项目的需要编辑这个文件,如下图:

这里需要注意:根据Squirrel文档说明,target folder 属性需要设置为lib/net45,否则并没有用;<iconUrl>标签用来制定未来的exe的icon。

5.用下面的命令创建一个nuget包,

nuget pack Package.nuspec

如下图:

之后在目录中会出现这个包

命名规则就是<my_app_name>.<version>.nupkg

创建安装程序

把应用程序打包成nuget包之后,就可以用squirrel创建一个安装程序了。在根目录打开命令行,执行以下命令:

squirrel --releasify <my_app_name>.<version>.nupkg

这个时候命令行中没有任何提示。但是别慌,编译一段时间后程序会创建一个release文件夹,里面有三个文件,nuget包,RELEASES 文件和安装文件Setup.exe。如下图:

如果没有出现这三个文件,可以查看目录中的SquirrelSetup.log,根据里面的报错,来进行调试。

注意上面这条squirrel 命令,可以用来设置setup.exe在安装过程中用传统icon还是用自定义的图片文件。使用Squirrel --help可以查看更多帮助

发布应用和安装应用

把上一步生成的setup.exe发送给想要安装这个应用的用户,就可以了。

最终应用会被安装在C:\Users\Administrator\AppData\Local\[appname] 文件夹中,注意Squirrel 的日志文件也存在目录中,调试安装问题的时候非常有用。

双击我们的setup.exe进行安装app的测试,如果中途有任何出错,在

C:\Users\Administrator\AppData\Local\SquirrelTemp 里面可以看到安装日志。如下图:

安装之后打开C:\Users\Administrator\AppData\Local 目录,可以看到app安装在这里,如下图:

自动创建快捷方式

进入我们安装之后的文件夹,命令行进入C:\Users\Administrator\AppData\Local\[your appname],执行 Update.exe --help ,可以看到

不知道从上图你有没有得到什么提示,反正我发现了,在命令行手动创建快捷方式的命令是Update.exe --createshortcut electron\electron.exe -i [your ico toute]\app.ico

所以,如果我们想让应用在安装过程中静默地创建好快捷方式,那就需要在app的安装之后相反设法执行这句代码。

因为我们的.exe会在安装之后自动打开程序,所以我在程序的入口main.js,添加sqruieel事件的监听就好了。如下图:

我顺便把程序卸载时,删除快捷方式的监听事件也写了进去。还有程序的更新和删除事件监听,但是这两个事件,我还没有进行测试。

更新应用

其实我一直很想做增量更新,在这里我的更新方法有两个,第一是在程序的入口添加js,发送请求到服务器,拉取更改文件进行本地替换,但是如果是node_mole依赖包的更改,这个方法并不可行。第二个方法比较安全而且快捷通过发布一个版本号不同的exe,如下:1.在这个创建安装程序的步骤2中,我们把程序代码都复制到了这个文件夹里面,如下图:

如果后续我们的程序要进行更新,首先我们需要把更改的文件直接复制替换到这个文件夹。

2.打开Package.nuspec,编辑version标签

3.参考本文种中创建安装程序部分的步骤2-4,重新生成setup.exe,发布应用。

通过执行setip.exe安装,程序会自动删除之前的应用,但是我并不清楚,sqruieel 是进行了增量替换,还是将之前的整个应用进行删除,再重新安装。

创建自定义安装包

在上一步,我们已经把自己的exe发布出来了,但是如果没有自定义名字跟icon,好像还不够酷,所以我们需要创建自定义的安装文件。

1.下载安装 Resource
Hacker

2.打开这个项目目录,在electron.exe上面右键

出现菜单,点击 Open using Rescource Hacker。

3.Resource Hacker应用运行之后中,在以下界面中选择Icon,然后在工具栏里面选择Action,Replace
Icon,如下图:

然后选择自己想要替换的.ico文件就好

4.这其实并不够,我们还需要更换exe里面的版本信息,打开Version
Info,把FileDescription和ProctName改成我们自己的项目名称,最好把SquirrelAwareVersion也更改一下,毕竟是版本号。

5.做完这些之后,我们需要按照之前的步骤,在命令行中输入

nuget pack Package.nuspec

重新生成nuget包,然后再使用

squirrel --releasify <my_app_name>.<version>.nupkg 命令创建安装文件。

6.打开之后生成的releases文件夹,参考本文种中创建安装程序部分的步骤2-4,对setup.exe进行自定义。

最后,一个可以自动更新又安装便捷,还有我们自己的酷酷的图标跟名字的应用就生成拉!

B. 求助求助 red hat linux操作系统实现electron模块加载的指令

内核模块的程序结构

模块加载函数(必须)
当通过insmod或modprobe命令加载内核模块时,模块会自动被内核执行,完成模块的相关初始化工作。
一般以 __init标识声名函数,并且用“mole_init(初始化函数名)”来初始化

模块卸载函数

模块许可证声名

模块参数

模块导出符号

模块作者等信息声名

独立编译Makefile
#makefile for kernel mole
MODNAME=helloworld
ifeq ($(PLATFORM), PC)
KERNELDIR?=/lib/moles/$(shell uname -r)/build
else
KERNELDIR?=你的linux源码编译路径
endif
obj-m := $(MODNAME).o
default:
$(MAKE) -C $(KERNELDIR) M=$(PWD) moles
clean:
@rm -rf *.o *.ko *.mod.* *.tmp* mole* Mole*
123456789101112131415
注意ifeq 后面要有个空格
模块测试源码
#include <linux/init.h>
#include <linux/mole.h>
static int __init helloworld_init(void)
{
printk(KERN_DEBUG "My first hello world kernel mole!\n");
return 0;
}
static void __exit helloworld_exit(void)
{
printk(KERN_DEBUG "Bye,cruel world !\n");
}
mole_init(helloworld_init);
mole_exit(helloworld_exit);
1234567891011121314151617
编译
初始化变量 export PLATFORM=PC
编译: make
执行make后得到对应的.ko文件
模块加载及卸载
insmod helloworld.ko
rmmod helloworld
执行加载命令时我们希望打印 My first hello world kernel mole!
卸载时我们希望能打印 Bye,cruel world !
然而实际上什么都没打印,lsmod查看helloworld.ko有成功加载
printk输出
在Linux中,内核打印语句printk()会将内核信息输出到内核信息缓冲区中,内核缓冲区是在
kernel/printk.c中通过如下语句静态定义的:
static char __log_buf[__LOG_BUF_LEN] __aligned(LOG_ALIGN);
1
内核信息缓冲区是一个环形缓冲区(Ring Buffer),因此,如果塞入的消息过多,则就会将之前的消
息冲刷掉。
printk()定义了8个消息级别,分为级别0~7,级别越低(数值越大),消息越不重要,第0级是紧急
事件级,第7级是调试级
通过/proc/sys/kernel/printk文件可以调节printk()的输出等级,该文件有4个数字值:
控制台(一般是串口)日志级别:当前的打印级别,优先级高于该值的消息将被打印至控制台。
默认的消息日志级别:将用该优先级来打印没有优先级前缀的消息,也就是在直接写printk(“xxx”)而不带打印级别的情况下,会使用该打印级别。
最低的控制台日志级别:控制台日志级别可被设置的最小值(一般都是1)。
默认的控制台日志级别:控制台日志级别的默认值。
用户可以通过dmesg命令查看内核打印缓冲区,而如果使用sudo dmesg -c命令,则不仅会显示__log_buf,还会清除该缓冲区的内容。
————————————————
版权声明:本文为CSDN博主“linyplhm”的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43777852/java/article/details/101852495

C. electron在win上可运行后,如何打包到linux上运行

1、如果只是需要运行起来,不需要打包,那么可以在linux建文件夹,npm安装对应包,然后将win下的代码拷贝到对应位置即可运行。

2、如果需要打包,则比较复杂。大致为:

a) 建app文件夹,将代码(含index.js文件)拷贝到其中。

b) npm安装asar,用asar的pack命令,将app文件夹打包成一个文件app.asar

asar pack app app.asar

c) 在网页链接 下载对应版本的linux预编译二进制包,解压,用上面生成的app.asar替换resources文件夹下同名文件。

d) 修改chrome-sanbox文件权限及属主:

sudochownroot:rootchrome-sandbox
sudochmod4755chrome-sandbox

e) ./electron即可运行

D. electron打包的deb格式文件,linux上图表显示不对,需要重启电脑才能解决,这是怎么回事,如何解决

1. 同时使用了npm与cnpm安装依赖解决方法:删除项目中的node_moles文件夹,重新使用 npm或cnpm安装依赖。重新安装完成后 重新打包即可。
2. 使用npm或cnpm安装依赖时,打包依旧错误。解决方法:别用淘宝镜像,直接使用国外源进行安装,可以将电脑连接手机打开热点,或翻墙速度快些。 重新安装完成后

E. electron怎么用命令行跑起来

前言:研究electron自动更新的时候,在electron的官方文档auto-updater 中,提到了在几个平台mac,linux,windows下electron 的自动更新方法,其中windsow平台上面,文章中建议先用grunt-electron-installer 模块来创建windows安装包,grunt这个...

F. 怎么给electron应用程序更换图标

前言:研究electron自动更新的时候,在electron的官方文档auto-updater 中,提到了在几个平台mac,linux,windows下electron 的自动更新方法,其中windsow平台上面,文章中建议先用grunt-electron-installer 模块来创建windows安装包,grunt这个工具是由Squirrel集成的。进而了解下Squirrel这个工具,
一个可以用来给electron应用的安装更新卸载添加快捷方式的工具。本文主要提及如何在windows平台下,用Squirrel创建electron的.exe安装包。

创建nuget包

我们的方法是使用nuget工具创建Nuget包,再使用Squirrel工具创建.exe。

下载squirrel.exe和nuget.exe,也可以选择直接安装Squirrel.Windows (需要有vitual
studio环境)。
2.新建文件夹如my-build,把下载好的squirrel.exe,nuget.exe和setup.exe

放进去,在文件夹放入我们未打包的electron应用,如下图:

4.在my-build根目录中,打开命令行执行nuget spec

如下图:

生成 spec包初始文件

5.编辑器打开 Package.nuspec,按照自己项目的需要编辑这个文件,如下图:

这里需要注意:根据Squirrel文档说明,target folder 属性需要设置为lib/net45,否则并没有用;<iconUrl>标签用来制定未来的exe的icon。

5.用下面的命令创建一个nuget包,

nuget pack Package.nuspec

如下图:

之后在目录中会出现这个包

命名规则就是<my_app_name>.<version>.nupkg

创建安装程序

把应用程序打包成nuget包之后,就可以用squirrel创建一个安装程序了。在根目录打开命令行,执行以下命令:

squirrel --releasify <my_app_name>.<version>.nupkg

这个时候命令行中没有任何提示。但是别慌,编译一段时间后程序会创建一个release文件夹,里面有三个文件,nuget包,RELEASES 文件和安装文件Setup.exe。如下图:

如果没有出现这三个文件,可以查看目录中的SquirrelSetup.log,根据里面的报错,来进行调试。

注意上面这条squirrel 命令,可以用来设置setup.exe在安装过程中用传统icon还是用自定义的图片文件。使用Squirrel --help可以查看更多帮助

发布应用和安装应用

把上一步生成的setup.exe发送给想要安装这个应用的用户,就可以了。

最终应用会被安装在C:\Users\Administrator\AppData\Local\[appname] 文件夹中,注意Squirrel 的日志文件也存在目录中,调试安装问题的时候非常有用。

双击我们的setup.exe进行安装app的测试,如果中途有任何出错,在

C:\Users\Administrator\AppData\Local\SquirrelTemp 里面可以看到安装日志。如下图:

安装之后打开C:\Users\Administrator\AppData\Local 目录,可以看到app安装在这里,如下图:

自动创建快捷方式

进入我们安装之后的文件夹,命令行进入C:\Users\Administrator\AppData\Local\[your appname],执行 Update.exe --help ,可以看到

不知道从上图你有没有得到什么提示,反正我发现了,在命令行手动创建快捷方式的命令是Update.exe --createshortcut electron\electron.exe -i [your ico toute]\app.ico

所以,如果我们想让应用在安装过程中静默地创建好快捷方式,那就需要在app的安装之后相反设法执行这句代码。

因为我们的.exe会在安装之后自动打开程序,所以我在程序的入口main.js,添加sqruieel事件的监听就好了。如下图:

我顺便把程序卸载时,删除快捷方式的监听事件也写了进去。还有程序的更新和删除事件监听,但是这两个事件,我还没有进行测试。

更新应用

其实我一直很想做增量更新,在这里我的更新方法有两个,第一是在程序的入口添加js,发送请求到服务器,拉取更改文件进行本地替换,但是如果是node_mole依赖包的更改,这个方法并不可行。第二个方法比较安全而且快捷通过发布一个版本号不同的exe,如下:1.在这个创建安装程序的步骤2中,我们把程序代码都复制到了这个文件夹里面,如下图:

如果后续我们的程序要进行更新,首先我们需要把更改的文件直接复制替换到这个文件夹。

2.打开Package.nuspec,编辑version标签

3.参考本文种中创建安装程序部分的步骤2-4,重新生成setup.exe,发布应用。

通过执行setip.exe安装,程序会自动删除之前的应用,但是我并不清楚,sqruieel 是进行了增量替换,还是将之前的整个应用进行删除,再重新安装。

创建自定义安装包

在上一步,我们已经把自己的exe发布出来了,但是如果没有自定义名字跟icon,好像还不够酷,所以我们需要创建自定义的安装文件。

下载安装 Resource
Hacker
2.打开这个项目目录,在electron.exe上面右键

出现菜单,点击 Open using Rescource Hacker。

3.Resource Hacker应用运行之后中,在以下界面中选择Icon,然后在工具栏里面选择Action,Replace
Icon,如下图:

然后选择自己想要替换的.ico文件就好

4.这其实并不够,我们还需要更换exe里面的版本信息,打开Version
Info,把FileDescription和ProctName改成我们自己的项目名称,最好把SquirrelAwareVersion也更改一下,毕竟是版本号。

5.做完这些之后,我们需要按照之前的步骤,在命令行中输入

nuget pack Package.nuspec

重新生成nuget包,然后再使用

squirrel --releasify <my_app_name>.<version>.nupkg 命令创建安装文件。

6.打开之后生成的releases文件夹,参考本文种中创建安装程序部分的步骤2-4,对setup.exe进行自定义。

最后,一个可以自动更新又安装便捷,还有我们自己的酷酷的图标跟名字的应用就生成拉!

G. electron-ssr在linux的kail版本下白屏怎么回事呢

试试服务器用工具v2ray,客户端用ss和proxychains-ng呢,可以参考《Linux就该这么学》了解更多信息

H. 利用electron在win上打linux包,将该包拖到linux下该如何运行

./electron/electron your-app/

I. 如何搭建Electron开发环境

electron自动更新的时候,在electron的官方文档auto-updater 中,提到了在几个平台mac,linux,windows下electron 的自动更新方法,其中windsow平台上面,文章中建议先用grunt-electron-installer 模块来创建windows安装包,grunt这个工具是由Squirrel集成的。进而了解下Squirrel这个工具,
一个可以用来给electron应用的安装更新卸载添加快捷方式的工具。本文主要提及如何在windows平台下,用Squirrel创建electron的.exe安装包。

创建nuget包

我们的方法是使用nuget工具创建Nuget包,再使用Squirrel工具创建.exe。

下载squirrel.exe和nuget.exe,也可以选择直接安装Squirrel.Windows (需要有vitual
studio环境)。
2.新建文件夹如my-build,把下载好的squirrel.exe,nuget.exe和setup.exe

放进去,在文件夹放入我们未打包的electron应用,如下图:

4.在my-build根目录中,打开命令行执行nuget spec

如下图:

生成 spec包初始文件

5.编辑器打开 Package.nuspec,按照自己项目的需要编辑这个文件,如下图:

这里需要注意:根据Squirrel文档说明,target folder 属性需要设置为lib/net45,否则并没有用;<iconUrl>标签用来制定未来的exe的icon。

5.用下面的命令创建一个nuget包,

nuget pack Package.nuspec

如下图:

之后在目录中会出现这个包

命名规则就是<my_app_name>.<version>.nupkg

创建安装程序

把应用程序打包成nuget包之后,就可以用squirrel创建一个安装程序了。在根目录打开命令行,执行以下命令:

squirrel --releasify <my_app_name>.<version>.nupkg

这个时候命令行中没有任何提示。但是别慌,编译一段时间后程序会创建一个release文件夹,里面有三个文件,nuget包,RELEASES 文件和安装文件Setup.exe。如下图:

如果没有出现这三个文件,可以查看目录中的SquirrelSetup.log,根据里面的报错,来进行调试。

注意上面这条squirrel 命令,可以用来设置setup.exe在安装过程中用传统icon还是用自定义的图片文件。使用Squirrel --help可以查看更多帮助

发布应用和安装应用

把上一步生成的setup.exe发送给想要安装这个应用的用户,就可以了。

最终应用会被安装在C:\Users\Administrator\AppData\Local\[appname] 文件夹中,注意Squirrel 的日志文件也存在目录中,调试安装问题的时候非常有用。

双击我们的setup.exe进行安装app的测试,如果中途有任何出错,在

C:\Users\Administrator\AppData\Local\SquirrelTemp 里面可以看到安装日志。如下图:

安装之后打开C:\Users\Administrator\AppData\Local 目录,可以看到app安装在这里,如下图:

自动创建快捷方式

进入我们安装之后的文件夹,命令行进入C:\Users\Administrator\AppData\Local\[your appname],执行 Update.exe --help ,可以看到

不知道从上图你有没有得到什么提示,反正我发现了,在命令行手动创建快捷方式的命令是Update.exe --createshortcut electron\electron.exe -i [your ico toute]\app.ico

所以,如果我们想让应用在安装过程中静默地创建好快捷方式,那就需要在app的安装之后相反设法执行这句代码。

因为我们的.exe会在安装之后自动打开程序,所以我在程序的入口main.js,添加sqruieel事件的监听就好了。

J. electron打了个linux包怎么在linux上运行起来

这个你最好去看看Electron官网看看相关文档,一般步骤是先进入进入项目目录,然后安装相关的项目依赖:npm install,最好可以使用命令npm start来启动项目的。
楼主如果对Linux系统感兴趣,想学习更多Linux系统知识,可以网络《Linux就该这么学》,不错的一本Linux入门教程。

阅读全文

与electronlinux相关的资料

热点内容
不背单词app单词怎么学习 浏览:479
程序员日常操作搞笑 浏览:379
android检查是否安装 浏览:373
苹果手机编辑pdf文件 浏览:458
android系统名字 浏览:969
安卓手机如何进去有求必应屋 浏览:432
指数除法运算法则底数不同 浏览:894
90压缩干粮09压缩干粮 浏览:516
android线程池框架 浏览:481
手机自带解压能解压哪些文件 浏览:804
linux安装hba驱动 浏览:119
java构造函数new 浏览:668
怎么查家里电器耗电量app 浏览:506
原神一直显示重新连接服务器怎么办 浏览:826
一般用途轴流式压缩机 浏览:926
没学历的怎么学编程 浏览:901
华为的隐藏相册无法加密 浏览:782
联通套餐app怎么设置 浏览:752
关于删除链表的算法描述 浏览:894
标准盘和压缩盘的区别 浏览:47