在我开始从实际应用程序创建快照之前,我认为从一个简单的 console.log 应用程序开始是个好主意。然而......两天后我毫无进展 :(
我在跑Ubuntu 核心(16.04),我创建了一个小型的 GitHub 仓库https://github.com/wmmihaa/wmmihaa001。
以下是我遵循的步骤:
1我创建了一个名为 wmmihaa001 的文件夹(与 repo 相同)并在经典模式下运行以下命令:
sudo snapcraft init
2这创造了折断包含我编辑的 snapcraft.yaml 文件的文件夹:
name: wmmihaa001
version: '0.1'
summary: ...
description: |
...
grade: devel
confinement: devmode
parts:
wmmihaa001:
source: https://github.com/wmmihaa/wmmihaa001.git
plugin: nodejs
apps:
hello:
command: bin/hello-wmmihaa
(该命令与我的package.json相关):
...
"bin": {
"hello-wmmihaa": "index.js"
},
...
3接下来我使用以下方法构建项目:
snapcraft
输出为:
Staging wmmihaa001
Priming wmmihaa001
Snapping 'wmmihaa001' /
Snapped wmmihaa001_0.1_amd64.snap
4最后,我使用以下命令安装了该项目:
sudo snap install --devmode wmmihaa001_0.1_amd64.snap
返回:
wmmihaa001 0.1 installed
5我检查我的 snap 是否已安装快照列表,果然,它就在那里:
wmmihaa001 0.1 x1 devmode
6我退出经典模式并运行wmmihaa001.你好:
admin@dell3001:~/snap$ wmmihaa001.hello
/snap/wmmihaa001/x1/bin/hello-wmmihaa: 1: /snap/wmmihaa001/x1/bin/hello-wmmihaa: Syntax error: word unexpected (expecting ")")
admin@dell3001:~/snap$
文件中唯一的语法是:
console.log("Hello WMMIHAA");
另外...有时我构建了 snap 包后,它并没有在 ../snap 文件夹中创建,而我可以在那个文件夹中找到我从现有样本中构建的其他 snap 包