当前环境Debian Linux-Deepin

安装Node

直接下载

命令下载

下载

wget https://nodejs.org/dist/v14.15.1/node-v14.15.1-linux-x64.tar.xz

解压,解压后在当前盘多了个文件夹node-v14.15.1-linux-x64.(可自行改名)

sudo tar -zxvf node-v14.15.1-linux-x64.tar.gz

建立软链接

sudo ln -s /盘路径/node-v14.15.1-linux-x64/bin/node /usr/local/bin/
sudo ln -s /盘路径/node-v14.15.1-linux-x64/bin/npm /usr/local/bin/

查看版本

node -v
npm -v

卸载Node

1、卸载npm

sudo npm uninstall npm -g

2、卸载node

sudo apt-get remove nodejs npm -y

3、检查是否还存在

  • 进入/usr/local/lib 删除所有 node 和 node_modules文件夹
  • 进入/usr/local/include 删除所有 node 和 node_modules 文件夹
  • 进入 /usr/local/bin 删除 node 的可执行文件
sudo rm -rf /usr/local/lib/node*
sudo rm -rf /usr/local/include/node*
sudo rm -rf /usr/local/bin/node*
sudo rm -rf /usr/local/node*

设置淘宝镜像源

npm config set ELECTRON_MIRROR=https://npm.taobao.org/mirrors/electron/

查看当前镜像源

npm config get registry

安装Electron

采用命令全局安装electron。

npm install electron -g

建立软链接

sudo ln -s /盘路径/node-v14.15.1-linux-x64/bin/electron /usr/local/bin/

查看当前electron版本

electron -v

新建项目

创建一个文件夹surround:

mkdir surround && cd surround

建立一个包文件

npm init -y

生成一个该项目的描述文件package.json

{
"name": "Surround",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}

创建脚本文件

建一个main.js文件,并加入如下js内容。

const { app, BrowserWindow } = require('electron')
function createWindow () {
const win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
})
win.loadFile('index.html')
}
app.whenReady().then(createWindow)
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit()
}
})

创建网页

对应于main.js中加载的网页地址,新建一个html页面。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Hello World!</title>
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline';" />
</head>
<body style="background: white;">
<h1>Hello World!</h1>
<p>
We are using node <script>document.write(process.versions.node)</script>,
Chrome <script>document.write(process.versions.chrome)</script>,
and Electron <script>document.write(process.versions.electron)</script>.
</p>
</body>
</html>

更改启动脚本

更改新建项目阶段所创建的package.json文件,内容为如下

{
"name": "Surround",
"version": "0.1.0",
"main": "main.js"
}

启动程序

进入到surround文件夹内,按照命令启动程序即可

electron .

或是在package.json中变更为如下脚本

{
"name": "Surround",
"version": "0.1.0",
"main": "main.js",
"scripts": {
"start": "electron ."
}
}

则可通过如下命令启动程序

npm start

如显示如下错误,不要用sudo打头即可。

Running as root without --no-sandbox is not supported.

安装打包工具

本次使用electron-packager,来完成打包工作,并采用全局安装。

npm install electron-packager -g

建立软链接

sudo ln -s /当前node文件夹路径/node-v14.15.1-linux-x64/bin/electron-packager /usr/local/bin/

安装依赖项

更改package.json文件,增加依赖项,可通过electron -v查看当前electron版本,将依赖项加入到devDependencies节点内。

{
"name": "Surround",
"version": "0.1.0",
"main": "main.js",
"scripts": {
"start": "electron ."
},
"devDependencies": {
"electron": "~11.0.4"
}
}

执行安装依赖模块命令

npm install

当前文件夹下多了node_modules文件夹,存放当前项目依赖的模块,并还多了一个package-lock.json文件,该文件用于锁定当前依赖的模块来源及版本号。

执行打包

在当前文件夹内,采用全局命令打包形式,依照如下命令打包。

electron-packager . 'Surround' --platform=linux --arch=x64 --out=./out --app-version=0.1.0

脚本格式对照(仅限如上使用到的)

electron-packager
<location of project> 项目位置 . 代表当前文件夹下
<name of project> 打包项目名称
<platform> 目标运行平台
<architecture> 底层架构类型
<optional options> 可选配置

或者将命令写入package.json中,执行npm run-script package

{
"name": "Surround",
"version": "0.1.0",
"main": "main.js",
"scripts": {
"start": "electron .",
"package": "electron-packager . 'Surround' --platform=linux --arch=x64 --out=./out --app-version=0.1.0"
},
"devDependencies": {
"electron": "~11.0.4"
}
}

再执行如下命令打包

npm run-script package

最终都会在当前文件夹内多出一个out文件夹,其中放置着打包好了的程序。

内部详细文件为应用具体文件

如此,完成好了打包的应用程序,直接运行Surround可执行程序是没得问题的。

2020-12-14,望技术有成后能回来看见自己的脚步

Electron安装打包指南的更多相关文章

  1. Electron安装过程深入解析(读完此文解决Electron应用无法启动,无法打包的问题)

    1. 安装Electron依赖包 开发者往往通过npm install(或 yarn add)指令完成为Node.js工程安装依赖包的工作, 安装Electron也不例外,下面是npm和yarn的安装 ...

  2. electron入坑指南

    electron入坑指南 简介 electron 实际集成chrome浏览器和node环境, 运行你写的网页 app 基本目录结构 index.html 名称可以不是index, 这个文件与普通网页的 ...

  3. electron 安装失败解决办法

    1.安装node https://nodejs.org/en/download/2.安装镜像工具npm install -g cnpm --registry=https://registry.npm. ...

  4. electron 安装

    1.从网上下载的是nodejs的v0.10.42版本的安装文件,安装node-v0.10.42-x86.msi都使用默认安装,安装完成后会安装在C:\Program Files\nodejs\目录下, ...

  5. [转载]SharePoint 2013测试环境安装配置指南

    软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...

  6. centOS安装Mysql指南

    centOS安装Mysql指南 说明:使用操作系统centOS6.4 32位系统:mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz; 一.准备 下载mysql ...

  7. Cadence OrCad Allegro SPB 16.6 下载及安装破解指南

    Cadence公司的电子设计自动化产品涵盖了电子设计的整个流程,包括系统级设计,功能验证,IC综合及布局布线,模拟.混合信号及射频IC设计,全定制集成电路设计,IC物理验证,PCB设计和硬件仿真建模等 ...

  8. 【转】服务器证书安装配置指南(Weblogic)

    服务器证书安装配置指南(Weblogic) 详情请点击: http://verisign.itrus.com.cn/html/fuwuyuzhichi/fuwuqizhengshuanzhuangpe ...

  9. 大数据应用日志采集之Scribe 安装配置指南

    大数据应用日志采集之Scribe 安装配置指南 大数据应用日志采集之Scribe 安装配置指南 1.概述 Scribe是Facebook开源的日志收集系统,在Facebook内部已经得到大量的应用.它 ...

随机推荐

  1. IDEA 2019.3.3 + Pycharm 2020.2.1 安装包及破解步骤

    IDEA IDEA的破解流程就不用再说了,免费试用,添加VMOptions参数,选择破解jar的路径,重启IDEA. 下载地址:链接:https://pan.baidu.com/s/1aTRATVTL ...

  2. FL Studio录制面板知识讲解

    FL Studio录制面板可以设置与录制有关的选项,它还有一个用来设置音符对齐的全局吸附选择器.刚接触水果这款音乐制作软件的同学通常不是很清楚这里的知识的,下面小编就给大家讲解一下. 1.首先,我们来 ...

  3. 为什么思维导图软件MindManager成为了企业培训必备的工具

    企业培训,无论是前期准备.中间的演讲演示.还是后期的总结整理等.MindManager都可以以不同的形式,给你更好的培训方式.下面就来看看MindManager是怎么协助企业培训的吧: 前期准备--制 ...

  4. MindManager中主题间距/线条粗细的灵活调整

    在MindManager中,主题和线条是思维导图的基本元素,只有通过它们才能将要表达的思想呈现.并联系起来.因此,关于它们的属性设置就会多一点,如颜色.宽度.位置等.而调整主题之间的距离及线条的粗细, ...

  5. 如何使用系统清理缓存软件优化MacBook

    在我们使用我们的Mac一定的时间后,总是不可避免的出现Mac内存不足的情况,所以清理垃圾软件也就成为了我们电脑里必不可少的软件.苹果软件商店中有很多各有不同的清理垃圾软件,但我们往往很难从这一大堆软件 ...

  6. python定时执行详解

    知识点 1. sched模块,准确的说,它是一个调度(延时处理机制),每次想要定时执行某任务都必须写入一个调度. (1)生成调度器:s = sched.scheduler(time.time,time ...

  7. 【Vue】VUE源码中的一些工具函数

    Vue源码-工具方法 /* */ //Object.freeze()阻止修改现有属性的特性和值,并阻止添加新属性. var emptyObject = Object.freeze({}); // th ...

  8. Kafka 内存管理类BufferPool

    基本上每个成熟的框架或者工具都有一套内存管理机制 BufferPool 是Kafka  用来管理内存的工具类         BufferPool内存管理包含2个部分,已用空间+可用空间(未申请空间+ ...

  9. AA:白细胞计数

    总时间限制:  1000ms 内存限制:  65536kB 描述 医院采样了某临床病例治疗期间的白细胞数量样本n份,用于分析某种新抗生素对该病例的治疗效果.为了降低分析误差,要先从这n份样本中去除一个 ...

  10. HTML的基本术语

    一.HTML含义1.根据W3C定义,HTML全称Hyper Text Markup Language: 超文本标记语言,用于定义文档的内容结构,该语言书写的代码通常会被浏览器解析执行.二.css含义1 ...